iptables를 사용하여 허용 된 IP (입 / 출력) 허용 목록


21

서버에 연결할 수 있고 사용자가 연결할 수있는 몇 가지 IP 범위가 있습니다. 다른 모든 것은 차단해야합니다.

iptables로 어떻게해야합니까?

내 OS는 데비안 기반의 리눅스 배포판입니다.

답변:


27

Firestarter 와 같은 방화벽 구성 도구를 가져 와서 제안하는 것이 좋습니다 . 그래도 몇 가지 기본 사항이 있습니다.

#Flush existing rules
iptables -F
# Set up default DROP rule for eth0
iptables -P INPUT DROP
# Allow existing connections to continue
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Accept everything from the 192.168.1.x network
iptables -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT
# Allow connections from this host to 192.168.2.10
iptables -A OUTPUT -o eth0 -d 192.168.2.10 -j ACCEPT

3
101010 버튼을 사용하여 serverfault 게시물에서 코드를 포맷 할 수 있다는 것을 알고 있습니다. 그렇게하면 당신의 의견은 소리 치지 않을 것입니다. 코드를 선택 (마우스 위로 드래그) 한 다음 텍스트 필드 위의 101010 버튼을 클릭하십시오.
Jason Tan

2
고마워요, 몰랐어요 이제 알아요 :)
Zenham

1
기존, 관련 +1-너무 많은 사람들이이 작업을 수행하지 않습니다.
Alnitak 2016 년

1
신의 사랑을 위해 기본 DROP 규칙을 마지막으로 설정하십시오! 나는 그 순서에 따라 기계에서 나 자신과 다른 모든 것을 잠갔습니다.
Bendoh

1
끔찍한 대답. OP는 모든 현재 연결을 끊는 것에 대해 아무 말도하지 않습니다. 나는 최고의 대답이 합리적이라고 생각했기 때문에 잠겨 있습니다.
omikes

14
iptables -I INPUT -s <allowed_ip> -j ACCEPT #(repeat this line as needed)
iptables -P INPUT DROP

이렇게하면 시스템이 허용되지 않는 컴퓨터에 대해 존재하지 않는 시스템으로 바뀝니다.


7

전체 서브넷이 아닌 임의의 범위를 허용하려면 'iprange'iptables 모듈을 사용할 수 있습니다.

iptables -P INPUT DROP

iptables -A INPUT -m iprange --src-range 192.168.1.30-50 -j ACCEPT

예를 들어, 주소가 192.168.1.30에서 192.168.1.50 사이 인 모든 시스템에서 트래픽이 들어오는 것을 허용합니다.

동일한 범위의 IP로 들어오는 트래픽과 나가는 트래픽을 허용하려면 해당 IP를 허용하고 모든 입력 및 출력 대상을 대상으로하는 특정 체인을 만드는 것이 좋습니다.

-기본 정책을 정의하여 Everithing을 삭제하십시오.

iptables -P INPUT DROP

iptables -P OUTPUT DROP

-새 체인을 만듭니다 :

iptables -N allowed_ips

-소스가 허용 범위의 일부이면 수락

iptables -A allowed_ips -m iprange --src-range 192.168.1.30-50 -j ACCEPT

-그렇지 않으면 발신자 체인으로 돌아가서 처리를 계속하십시오.

iptables -A allowed_ips -j RETURN

-기계로 들어오고 나가는 모든 트래픽이 새로운 체인을 통과하도록합니다.

iptables -A INPUT -j allowed_ips

iptables -A OUTPUT -j allowed_ips

그리고 그게 다야! 물론 인터페이스와의 모든 트래픽을 허용하는 규칙 등과 같은 추가 규칙이 필요할 수 있습니다.


1

규칙에 만족 하면 규칙 을 저장하고 싶을 것 입니다. 이 링크의 주석에는이를 수행하는 방법에 대한 몇 가지 옵션이 있습니다.

간단한 요구를위한 사용하기 쉬운 iptables 규칙 생성기는 ufw 입니다. 패키지는 데비안 불안정한 상태로 제공됩니다.

Firestarter 도 시도하십시오 . 레니에서 사용할 수 있습니다.


0

지난 1 년 동안 사용한 ferm 도 사용할 수 있으며 조건부 방화벽 규칙과 같은 경우에 많은 도움이되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.