Ubuntu 18.04 Server에서 내부 및 외부 네트워크를 구성하는 데 문제가 있습니다. 사례는 WLAN 연결 장치의 IP 주소를 임대하는 DHCP 서비스가 있는 게이트웨이 장치가 있다는 것입니다. 게이트웨이 장치 eth0 IP 주소는 192.168.1.120이고 게이트웨이 장치 wlan0은 고정 10.10.0.1 IP 주소를 가지며 첫 번째 wlan 클라이언트는 10.10.0.2 IP 주소를 얻습니다. 게이트웨이 장치 eth0에는 인터넷에 액세스할 수 있습니다. 그러나 wlan0 연결된 장치는 MySql 또는 사용자 정의 REST API와 같은 게이트웨이 장치 서비스에만 액세스할 수 있어야 합니다.
규칙 1: 게이트웨이 장치는 인터넷에 액세스할 수 있어야 합니다.
[eth0]<-->[인터넷]
규칙 2: WLAN에 연결된 장치는 게이트웨이 장치 서비스에만 액세스할 수 있어야 합니다.
[Wlan클라이언트]<-->[wlan0]<-->[eth0]--||액세스 불가||--[인터넷]
내가 한 일은 Ubuntu 18.04 Server를 설치하고 기본 서비스를 설치했으며 이제 네트워크 제한을 만들어야 한다는 것입니다.
wlan0 연결된 장치가 게이트웨이 장치 서비스를 사용할 수 있도록 다음 설정을 수행했습니다. 그러나 wlan0에 연결된 장치도 이제 제한되어야 하는 인터넷 액세스를 갖습니다.
/etc/sysctl.conf
net.ipv4.ip_forward=1
iptables 구성
iptables -F
iptables -t nat -F
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables-save > /etc/iptables/rules.v4
iptables-restore < /etc/iptables/rules.v4
구성을 도와줄 수 있는 사람이 있나요?
답변1
FORWARD
문제를 해결하려면 테이블 체인을 사용하여 작업해야 합니다 filter
. 테이블 FORWARD
은 호스트에서 들어오고 나가는 모든 패킷을 필터링하는 데 사용됩니다. (반대로 INPUT
테이블은 들어오는 트래픽을 위한 테이블이고 OUTPUT
나가는 트래픽을 위한 테이블입니다.) 실제로 두 가지 접근 방식이 있습니다.
1/ 모든 트래픽을 제한하고 필요에 따라 개방합니다.
iptables -t filter -P FORWARD DROP
iptables -t filter -A FORWARD [your rule #1 to match allowed streams(s)] -j ACCEPT
2/ 액세스를 제한하려는 장치에 대해서만 트래픽을 제한합니다.
iptables -t filter -P FORWARD ACCEPT
iptables -t filter -A FORWARD [your rule #1 to match forbidden stream(s)] -j REJECT --reject-with admin-prohib
일반적으로 보안 측면에서 모범 사례는 첫 번째 접근 방식입니다.