snmpd 모니터링 서버용 iptables설정 문의 드립니다.
A서버는 snmpd가 동작하는 서버이고
B서버는 snmp의 정보를 가져오는 서버입니다.
A서버에서 UDP 161포트 활성화되어 있는 상태이고
B서버에서는 방화벽으로 22,80 포트외에 모든게 막혀있고 나가는 포트는 모두 열려있습니다.
문제는 B서버에서 iptables를 중지하면 정상적으로 A서버의 snmp정보를 가져오지만
iptables를 시작하면 A서버의 snmp정보를 가져오지 못합니다.
제가 알고 있는 바로는
1. B서버의 랜덤포트가 A서버의 161포트로 접속해서 snmp정보를 가져온다.
2. 때문에 A서버에서는 UDP 161포트를 열어야 하며
3. B서버에서는 랜덤포트로 접속하기 때문에 나가는 포트가 모두 열려있으면된다.
확실한것은 A서버에는 문제가 없다입니다.(B서버에서 iptables를 끄면 잘됩니다.)
참고로 B 서버의 iptables 설정 값입니다.
*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 -m state --state ESTABLISHED,RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state RELATED -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
제가 뭘 잘못 알고 있는지요?
snmp 데이타 전송
snmp 데이타 전송 방식에 따라 udp 161, udp 162 를 사용하는 것으로 알고 있습니다. tcpdump 등으로 패킷을 모니터링해서 방화벽 정책을 결정하세요.
댓글 달기