728x90

IPTABLES와 SNMP 통신허용 추가

/ snmp 설치
# yum -y install net-snmp net-snmp-utils

/ snmpd.conf 설정

####
# First, map the community name "public" into a "security name"

#       sec.name  source          community
com2sec notConfigUser  default       public
com2sec snmpsec         192.168.111.0/24        kdchrd

####
# Second, map the security name into a group name:

#       groupName      securityModel securityName
group   notConfigGroup v1           notConfigUser
group   notConfigGroup v2c           notConfigUser
group   snmpsecGroup    v2c             snmpsec

####
# Third, create a view for us to let the group have rights to:

# Make at least  snmpwalk -v 1 localhost -c public system fast again.
#       name           incl/excl     subtree         mask(optional)
view    systemview    included   .1.3.6.1.2.1.1
view    systemview    included   .1.3.6.1.2.1.25.1.1
view    all           included   .1 80

####
# Finally, grant the group read-only access to the systemview view.

#       group          context sec.model sec.level prefix read   write  notif
access  notConfigGroup ""      any       noauth    exact  systemview none none
access  snmpsecGroup   ""      any       noauth    exact  all none none

 

/ iptables 설정

iptables -F
iptables -P INPUT ACCEPT

iptables -A INPUT -s 192.168.111.1 -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -s 192.168.111.1 -p tcp -m multiport --dport 21,23 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT

iptables -A INPUT -s 192.168.111.1 -p icmp -j ACCEPT
iptables -A INPUT -s 192.168.111.1 -p udp --dport 161 -j ACCEPT
iptables -A INPUT -s 192.168.111.129 -p udp --dport 161 -j ACCEPT
iptables -A INPUT  -m stat -state RELATED,ESTABLEISHED -j ACCEPT

iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -s 127.0.0.1 -j ACCEPT
iptables -A INPUT -p udp -j DROP
iptables -A INPUT -p tcp -j DROP
iptables -A INPUT -p icmp -j DROP

iptables -A FORWARD -j DROP
iptables -A OUTPUT -j ACCEPT

service iptables save

iptables -nvL --line-n

 

/ snmpwalk를 확인한다.
- 서버
# snmpwalk -v 2c -c kdchrd 192.168.111.101 system


- 호스트pc

- 클라이언트 서버
- snmpwalk가 돌아가지 않으면 'yum -y install net-snmp-utils'로 유틸을 설치하고 진행한다.
# snmpwalk -v 2c -c kdchrd 192.168.111.101 system


iptables 체인생성

 

/ chain 생성/추가
- Flooding (ICMP, TCP, UDP)
- DDoS 분산된 서비스거부공격, DoS 서비스거부공격
- DRDoS (Denial Of Service)

/ ICMP Flooding 대비
# iptables -N ICMP
# iptables -A INPUT -p icmp -j ICMP
# iptables -A ICMP -p icmp --icmp-type echo-request -j DROP

/ ICMP 응답 차단 설정방법
- vi /proc/sys/net/ipv4/icmp_echo_ignore_all    1값을 넣거나
- echo 1> /proc/sys/net/ipv4/icmp_echo_ignore_all

/ mdstat
- 레이드 설정값

/ UDP Flooding 대비
# iptables -N UDP
# iptables -A INPUT -p udp -j UDP
- 조건) 같은 IP주소에서 1초에 10개이상 UDP패킷이 들어오면..
# iptables -A UDP -p udp --dport 161 -m recent --update --seconds 1 --hitcount 10 -j DROP
- 로그를 남기겠다.
# iptables -A UDP -j LOG --log-prefix "UDP FLOOD"

/ 초 당 허용되는 접속 개수 제한 (100/s)
# iptables -A INPUT -p udp --dport 161 --syn -m limit --limit 100/s -j ACCEPT

/ 허용되는 접속 개수 오버되면 제한 (30)
# iptables -A INPUT -p udp --dport 161 --syn -m connlimit --connlimit-above 30 -j DROP
- 허용되는 접속 개수 오버되면 제한 (3)
# iptables -A INPUT -p tcp --dport 22 --syn -m connlimit --connlimit-above 3 -j DROP
- 로그를 남기겠다.
# iptables -A UDP -j LOG --log-prefix "[Im Attacking]"

/ IP주소 당 하나의 소스에서 15개 이상의 연결을 거부
# iptables -A INPUT -p tcp --dport 80 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
# iptables -A INPUT -p tcp --dport 80 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
- connlimit-mask 알아보기

/ 160개의 초 당 새로운 연결 제한이 적용되기 전에 160개의 새로운 연결을 허용
- 연결제한 적용전에 새 연결을 허용하기
- 연결 제한을 만들고, 제한이 꽉 차면, 기존 연결들은 cut하고 새로운 연결을 만들자.
# iptables -A INPUT -m state --state RELATED,ESTABLISHED -m limit --limit 160/s --limit-burst 160 -j ACCEPT

/ SSH 무차별(무작위) 대입공격 대비
# iptables -N SSH
# iptabels -A INPUT -p tcp --dport 22 -m state --state NEW -j SSH
- 60초동안에 15번 이상 SSH접속시도시 DROP
# iptables -A SSH -p tcp --dport 22 -m recent --update --seconds 60 --hitcount 15 -j DROP
# iptables -A SSH -j LOG --log-prefix "SSH BruteForce Attack"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90

+ Recent posts