리눅스에서 ip로 접근 제한

cynicjj의 이미지

안녕하세요?
리눅스 초보 입니다.

특정 ip 대역을 제외한 나머지를 모두 접근 불가하게 만드려면 어떻게 해야 하나요?
여기서 접근이란 http, ftp, ssh, DB 등 모든 서비스를 말 합니다.
또한 지금은 설치되지 않았지만 미래에 설치 될 서비스까지 포함입니다.

Cent OS 5.5 사용합니다.

간단한 방법이었으면 좋겠네요. ^^;;;
부탁드립니다.

세벌의 이미지

http://wiki.kldp.org/wiki.php/iptables
구글, 네이버 등에서 iptables 검색해 보셔요.

pogusm의 이미지

# vim /etc/sysconfig/iptables

파일을 열어서..

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#http
-A RH-Firewall-1-INPUT -s 192.168.0.0/16 -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -s 127.0.0.1 -p tcp --dport 80 -j ACCEPT
 
#ftp
-A RH-Firewall-1-INPUT -s 192.168.0.0/16 -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -s 127.0.0.1 -p tcp --dport 21 -j ACCEPT
 
 
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

이런식으로 수정 저장한후

# /etc/init.d/iptables restart
iptables 재시작 해주면 됩니다..

익명 사용자의 이미지

# Manual customization of this file is not recommended.

라고 적어놔도 꼭 저렇게 알려주는 사람이 있어요 하여간..