특정 범위의 IP 주소에서 액세스를 허용하도록 Linux 서버 방화벽 구성

특정 범위의 IP 주소에서 액세스를 허용하도록 Linux 서버 방화벽 구성

저는 리눅스 서버를 처음 사용합니다. 저는 현재 처음으로 Ubuntu 10.10 서버를 시작하고 실행하려고 하며 관리를 위해 Webmin을 사용하고 있습니다. 방화벽 설정 중 막혔어요. 내가 해야 할 일은 HTTP 서버와 Webmin에 액세스하기 위해 IP 범위(예: 128.171.21.1 - 128.171.21.100)만 허용하는 것입니다. 나는 많은 튜토리얼을 보았지만 그 중 어느 것도 나에게 필요한 것과 맞지 않았습니다.

미리 감사드립니다!

답변1

DROPfor INPUTOUTPUTchains 로 설정된 기본 정책이 있는 경우 다음 명령을 사용하여 HTTP 서버에 대한 액세스를 허용할 수 있습니다 .

$ sudo iptables -A INPUT -i lo -j ACCEPT
$ sudo iptables -A OUTOUT -i lo -j ACCEPT
$ sudo iptables -A INPUT -s 128.171.21.0/24 -p tcp -m tcp --dport 80 -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

$ sudo iptables -A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
$ sudo iptables -A INPUT  -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT
$ sudo iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT
$ sudo iptables -A INPUT -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT

모든 서브넷 128.171.21.0/24에서 웹 서버에 액세스할 수 있습니다. 필요에 따라 사용자 정의할 수 있습니다.

주의하세요. SSH(포트 22)와 같은 다른 프로토콜이 서버에 원격으로 액세스할 수 있도록 허용해야 할 수도 있습니다.

편집하다:서버가 DNS 및 HTTP를 요청할 수 있도록 마지막 네 가지 규칙이 추가되었습니다.

답변2

iptables가 너무 비밀스럽다면 Ubuntu에는 다음과 같은 간단한 iptables 래퍼가 있습니다.으악.

관련 정보