iptables 세팅이여...

hunhoon71의 이미지

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

iptables 로 기본적으로 사용하는 포트를 제외하고 전부 막으려고 합니다.

웹에서 검색해서 세팅을 했습니다만... 정상적으로 세팅이 안된것 같네여...

커널은 2.4.22-1.2115.nptl Fedora Core release 1 (Yarrow) 입니다.

[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 21 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 22 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 25 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 80 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 110 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 3306 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --dport 873 --syn -j ACCEPT
[root@ns7 sbin]# iptables -A INPUT -p tcp -m tcp --syn -j REJECT
[root@ns7 sbin]# iptables -A INPUT -p udp -j REJECT
[root@ns7 sbin]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:ftp flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:ssh flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:smtp flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:http flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:pop3 flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:mysql flags:SYN,RST,ACK/SYN
ACCEPT tcp -- anywhere anywhere tcp dpt:rsync flags:SYN,RST,ACK/SYN
REJECT tcp -- anywhere anywhere tcp flags:SYN,RST,ACK/SYN reject-with icmp-port-unreachable
REJECT udp -- anywhere anywhere reject-with icmp-port-unreachable

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain RH-Firewall-1-INPUT (0 references)
target prot opt source destination

이렇게 세팅을 했구여...

[root@ns7 sbin]# /etc/rc.d/init.d/iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]

그리고... iptables 을 확인 하니...

[root@ns7 sbin]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- anywhere anywhere

Chain FORWARD (policy ACCEPT)
target prot opt source destination
RH-Firewall-1-INPUT all -- anywhere anywhere

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain RH-Firewall-1-INPUT (2 references)
target prot opt source destination
ACCEPT all -- anywhere anywhere
ACCEPT icmp -- anywhere anywhere icmp any
ACCEPT ipv6-crypt-- anywhere anywhere
ACCEPT ipv6-auth-- anywhere anywhere
ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:smtp
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ftp
ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited

정확히 된건지 잘 모르겠네여...

[root@ns7 sbin]# netstat -ln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:199 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
udp 0 0 0.0.0.0:161 0.0.0.0:*
udp 0 0 0.0.0.0:68 0.0.0.0:*
Active UNIX domain sockets (only servers)
Proto RefCnt Flags Type State I-Node Path
unix 2 [ ACC ] STREAM LISTENING 1609 /tmp/mysql.sock

포트가 다 막힌것 같지 않네여... 고수님들 한수 지도 부탁합니다....^^

익명 사용자의 이미지

RH 는 /etc/sysconfig/iptables 인가를 수정해야 반영될겁니다.