/proc 보안설정 스크립트
/proc 보안설정 script
> proc_security.sh 파일로 만들어 실행하면 하단 설정값이 적용됩니다.
----------------------------------------------------------------------------------------------------
#!/bin/sh
## TCP SYN_Flooding 공격을 차단하기 위해 설정하는 tcp-syncookies 값 ( 기본값 "0" ) ##
# sysctl -a | grep syncookies
# sysctl -w net.ipv4.tcp_syncookies=1
# echo "## TCP SYN_Flooding 공격을 차단하기 위해 설정하는 tcp-syncookies 값 ( 기본값 "0" ) ##
# echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.conf
## TCP SYN_Flooding 공격을 차단하기 위해 설정하는 syn_backlog 값 ( 기본값 "0" ) ##
# echo 1024 > /proc/sys/net/ipv4/tcp_max_syn_backlog
# echo "## TCP SYN_Flooding 공격을 차단하기 위해 설정하는 syn_backlog 값 ( 기본값 "0" ) ##" >> /etc/sysctl.conf
# echo "net.ipv4.tcp_max_syn_backlog = 1024" >> /etc/sysctl.conf
## 서버에서 IP포워딩 기능 ( 기본값 "0", 라우팅 기능이 필요시 "1" ) ##
# sysctl -a | grep ip_forward
# sysctl -w /proc/sys/net/ipv4/ip_forward=0
# echo "## 서버에서 IP포워딩 기능 ( 기본값 "0", 라우팅 기능이 필요시 "1" ) ##" >> /etc/sysctl.conf
# echo "net.ipv4.ip_forward = 0" >> /etc/sysctl.conf
## DoS공격 source로 사용차단(기본값 "0". IP스푸핑 방지하기) ##
# echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
# echo "## DoS공격 source로 사용차단(기본값 "0". IP스푸핑 방지하기) ##" >> /etc/sysctl.conf
# echo "net.ipv4.conf.default.rp_filter = 1" >> /etc/sysctl.conf
## /proc 파티션 기본 퍼미션은 555 상태, 보안유지를 위하여 700 으로 변경 ##
## 단, Java 등과 같은 특별한 시스템이 이용될경우 본래 퍼미션 555 환경을 사용하여야 한다. ##
#chmod 700 /proc
echo "" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## Smurf 공격방지를 위한 broadcast 패킷 방지하기 ( 기본값 "0" ) ##
echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
echo "## Smurf 공격방지를 위한 broadcast 패킷 방지하기 ( 기본값 "0" ) ##" >> /etc/sysctl.conf
echo "net.ipv4.icmp_echo_ignore_broadcasts = 1" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## TCP 세션 종료시간 조정 ( 기본값 "60" ) ##
echo 20 > /proc/sys/net/ipv4/tcp_fin_timeout
echo "## TCP 세션 종료시간 조정 ( 기본값 "60" ) ##" >> /etc/sysctl.conf
echo "net.ipv4.tcp_fin_timeout = 20" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## Tcp keepalive time 설정 ( 기본값 "7200" ) ##
echo 1200 > /proc/sys/net/ipv4/tcp_keepalive_time
echo "## Tcp keepalive time 설정 ( 기본값 "7200" ) ##" >> /etc/sysctl.conf
echo "net.ipv4.tcp_keepalive_time = 1200" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## SYN_Flooding 공격 막기 ( 기본값 "1024" 백로그 사이즈 변경 ) ##
echo 1024 > /proc/sys/net/ipv4/tcp_max_syn_backlog
echo "## SYN_Flooding 공격 막기 ( 기본값 "1024" 백로그 사이즈 변경 ) ##" >> /etc/sysctl.conf
echo "net.ipv4.tcp_max_syn_backlog = 1024" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## ICMP redirect의 변조된 패킷 차단(accept 패킷 차단설정 기본값 "1") ##
echo 0 > /proc/sys/net/ipv4/conf/default/accept_redirects
echo "## ICMP redirect의 변조된 패킷 차단(accept 패킷 차단설정 기본값 "1") ##" >> /etc/sysctl.conf
echo "net.ipv4.conf.default.accept_redirects = 0" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## ICMP redirect의 변조된 패킷 차단(send 패킷 차단설정 기본값 "1") ##
echo 0 > /proc/sys/net/ipv4/conf/default/send_redirects
echo "## ICMP redirect의 변조된 패킷 차단(accept 패킷 차단설정 기본값 "1") ##" >> /etc/sysctl.conf
echo "net.ipv4.conf.default.send_redirects = 0" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## 스푸핑 패킷에 대한 로그남기기 ( 기본값 "0" )##
echo 1 > /proc/sys/net/ipv4/conf/default/log_martians
echo "## 스푸핑 패킷에 대한 로그남기기 ( 기본값 "0" )##" >> /etc/sysctl.conf
echo "net.ipv4.conf.default.log_martians = 1" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## Source Route 패킷 허용막기 ##
echo 0 > /proc/sys/net/ipv4/conf/default/accept_source_route
echo "## Source Route 패킷 허용막기 ##" >> /etc/sysctl.conf
echo "net.ipv4.conf.default.accept_source_route = 0" >> /etc/sysctl.conf
echo "net.ipv4.conf.all.accept_source_route = 0" >> /etc/sysctl.conf
#echo "net.ipv4.conf.bond0.accept_source_route = 0" >> /etc/sysctl.conf
echo "net.ipv4.conf.eth0.accept_source_route = 0" >> /etc/sysctl.conf
#echo "net.ipv4.conf.eth1.accept_source_route = 0" >> /etc/sysctl.conf
#echo "net.ipv4.conf.eth2.accept_source_route = 0" >> /etc/sysctl.conf
#echo "net.ipv4.conf.eth3.accept_source_route = 0" >> /etc/sysctl.conf
echo "net.ipv4.conf.lo.accept_source_route = 0" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
echo "" >> /etc/sysctl.conf
## Source Route 패킷 허용막기 conf 전체 수정 ##
for ii in /proc/sys/net/ipv4/conf/*/accept_source_route; do
echo "0" > $ii
done;
sysctl -p
----------------------------------------------------------------------------------------------------
[작성] (주)스마일서브 | 백광수
'리눅스 > Security' 카테고리의 다른 글
mod_security 다운로드 (0) | 2015.01.26 |
---|---|
nessus 5.0.3 에서 80 포트 스캐닝 차단 설정 (0) | 2015.01.26 |
[그린IDC]TCP SYN_Flooding 공격의 원인과 해결책 (0) | 2015.01.26 |
ARP 스푸핑 의심될때 RAS Server (Dial In) Interface 확인 (0) | 2015.01.26 |
Open Proxy의 위험 (0) | 2015.01.26 |