네트웍이 안 될수도 있으니 설정 제대로 보고 하세요 -.-
문제 일어날 가능성이 충분히 있음
저한테 따지진 마세욧
-MeOw 씀-
cd /var/tmp
cat > /var/tmp/getit.sh << _JayJay_
#!/bin/sh
cat > /var/tmp/sysctl.conf << _MeOw_
# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled. See sysctl(8) and
# sysctl.conf(5) for more details.
net.ipv4.icmp_destunreach_rate=1
# 1/100초 동안 받아들일 수 있는 "dest unreach (type 3) icmp" 의 개수
net.ipv4.icmp_echo_ignore_broadcasts=1
# Broadcast 로부터 오는 ping 을 차단함. (Smurf 공격을 차단함)
net.ipv4.icmp_echoreply_rate=1
# 1/100초에 반응하는 ping 의 최대 숫자
net.ipv4.icmp_echo_ignore_all=1
#모든 ping 을 차단함
net.ipv4.icmp_ignore_bogus_error_responses=1
# IP 나 TCP 헤더가 깨진 bad icmp packet을 무시한다.
# <--- And --->
# 어떤 router 들은 broadcast frame 들로 거짓 응답을 보냄으로서 RFC 1122를 위반
# 한다. 이러한 위한들은 보통 커널 경고를 통해 로깅이 된다. 이것을 TRUE 로 설정
# 을 할경우 커널은 이러한 경고를 하지않을 것이며, 로그 파일이 지저분해 지는 것
# 을 피할수 있다. 기본값은 FALSE 이다
net.ipv4.icmp_paramprob_rate=1
# 1/100 초에 받아들이는 param probe packets의 수
net.ipv4.icmp_timeexceed_rate=1
# 1/100 초에 받아들이는 timeexceed 패킷의 수(traceroute 와 관련)
net.ipv4.igmp_max_memberships=20
# 1/100 초에 받아들이는 igmp "memberships" 의 수
net.ipv4.ip_always_defrag=0
# 항상 패킷 조각 모음을 하지 않는다.
net.ipv4.ip_default_ttl=64
# 매우 복잡한 사이트에서는 이 값을 늘리는 것도 가능하지만
# 64로 두는 것이 적당하며 더 늘렸을 경우에는 큰 문제가 발생할 수도 있다.
net.ipv4.ip_forward=0
# 게이트웨이 서버가 아닌 이상 패킷을 포워딩 할 필요는 없다.
net.ipv4.ipfrag_time=15
# fragmented packet이 메모리에 존재하는 시간을 15초로 설정한다.
net.ipv4.tcp_syn_retries=3
# 일정한 시간과 IP 별로 보내고 받는 SYN 재시도 횟수를 3회로 제한한다.
# 이 옵션은 스푸핑된(위조된) 주소로 오는 SYN 연결의 양을 줄여준다.
# 기본값은 5이며 255를 넘지 않아야 한다.
net.ipv4.tcp_retries1=3
# 무언가 문제가 있을 때 연결을 위해 재시도 할 횟수. 최소값과 기본값은 3이다.
# <--- And --->
# 무언가 잘못되었을 경우, network layer로 이 현상을 reporting 하기전 다시 확인
# 을 하기 위한 횟수를 지정한다. 최소 RPC 값은 3 이며, 이는 RTO 상에서 3 초에서
# 8 분 사이에 응답을 하도록 하는 것이 기본값이다.
net.ipv4.tcp_retries2=7
# TCP 연결을 끊기 전에 재시도할 횟수.
net.ipv4.conf.eth0.rp_filter=2
net.ipv4.conf.lo.rp_filter=2
net.ipv4.conf.default.rp_filter=2
net.ipv4.conf.all.rp_filter=2
# 이 설정은 자신의 네트워크가 스푸핑된 공격지의 소스로 쓰이는 것을 차단한다.
# 모든 인터페이스에서 들어오는 패킷에 대해 reply를 하여 들어오는 인터페이스로 나가지
# 못하는 패킷을 거부한다.
net.ipv4.conf.eth0.accept_redirects=0
net.ipv4.conf.lo.accept_redirects=0
net.ipv4.conf.default.accept_redirects=0
net.ipv4.conf.all.accept_redirects=0
# icmp redirects 를 허용하지 않는다.
# 만약 ICMP Redirect 를 허용할 경우에는 공격자가 임의의 라우팅 테이블을 변경할 수
# 있게 되어 자신이 의도하지 않는 경로, 즉 공격자가 의도한 경로로 트래픽이 전달될 수
# 있는 위험이 있다.
net.ipv4.conf.eth0.accept_source_route=0
net.ipv4.conf.lo.accept_source_route=0
net.ipv4.conf.default.accept_source_route=0
net.ipv4.conf.all.accept_source_route=0
# SRR 옵션으로 패킷들을 수용한다. IP source routing 을 제어한다. 보통 호스트로
# 향하게 하는 것을 권장한다. TRUE (router) FALSE (host)
# <--- And --->
# 스푸핑을 막기 위해 source route 패킷을 허용하지 않는다.
# 소스 라우팅을 허용할 경우 악의적인 공격자가 IP 소스 라우팅을 사용해서 목적지의 경로# 를 지정할 수도 있고, 원래 위치로 돌아오는 경로도 지정할 수 있다.
# 이러한 소스 라우팅이 가능한 것을 이용해 공격자가 마치 신뢰받는 호스트나
# 클라이언트인것 처럼 위장할 수 있는 것이다.
net.ipv4.conf.eth0.bootp_relay=0
net.ipv4.conf.lo.bootp_relay=0
net.ipv4.conf.default.bootp_relay=0
net.ipv4.conf.all.bootp_relay=0
# bootp 패킷을 허용하지 않는다.
net.ipv4.conf.eth0.log_martians=1
net.ipv4.conf.lo.log_martians=1
net.ipv4.conf.default.log_martians=1
net.ipv4.conf.all.log_martians=1
# 스푸핑된 패킷이나 소스라우팅, Redirect 패킷에 대해 로그파일에 정보를 남긴다.
net.ipv4.conf.eth0.secure_redirects=0
net.ipv4.conf.lo.secure_redirects=0
net.ipv4.conf.default.secure_redirects=0
net.ipv4.conf.all.secure_redirects=0
# 게이트웨이로부터의 redirect 를 허용하지 않음으로써 스푸핑을 막기 위해 설정한다.
net.ipv4.conf.eth0.send_redirects=0
net.ipv4.conf.lo.send_redirects=0
net.ipv4.conf.default.send_redirects=0
net.ipv4.conf.all.send_redirects=0
# icmp redirects 를 보내지 않는다.
net.ipv4.conf.eth0.proxy_arp=0
net.ipv4.conf.lo.proxy_arp=0
net.ipv4.conf.default.proxy_arp=0
net.ipv4.conf.all.proxy_arp=0
# proxy arp 를 설정하지 않는다. 이 값이 1로 설정되었을 경우 proxy_arp 가 설정된 인터페
# 이스에 대해 arp 질의가 들어왔을 때 모든 인터페이스가 반응하게 된다.
net.ipv4.tcp_keepalive_time=30
# 이미 프로세스가 종료되어 불필요하게 남아 있는 연결을 끊는 시간을 줄이도록 한다.
# <--- And --->
# Decrease the time default value for tcp_keepalive_time connection
# tcp가 KeepAlive 메시지를 보내는 시간 간격
net.ipv4.tcp_fin_timeout=30
# 연결을 종료시 소요되는 시간을 줄여준다. (기본 설정값 : 60)
# <--- And --->
# tcp 연결해제 시간을 줄이며 불필요한 ip확장기능을 사용하지 않음
# Decrease the time default value for tcp_fin_timeout connection
# 소켓이 항상 close 되기 전에 마지막 FIN을 기다리는 시간
net.ipv4.tcp_tw_buckets=720000
# 동시에 유지 가능한 timewait 소켓의 수이다. 만약 지정된 숫자를 초과하였을 경우에는
# timewait 소켓이 없어지며 경고 메시지가 출력된다. 이 제한은 단순한 DoS 공격을 차단하
# 기 위해 존재하는데, 임의로 이 값을 줄여서는 안 되며 메모리가 충분하다면 적절하게 늘
# 려주는 것이 좋은데, 64M 마다 180000 으로 설정하면 된다. 따라서 256M 일 경우에는
# 256/4=4 4*180000=720000 을 적용하면 된다.
net.ipv4.tcp_keepalive_probes=2
net.ipv4.tcp_max_ka_probes=100
# 간단한 DoS 공격을 막아준다.
# 동시에 유지 가능한 timewait 소켓의 수. 지정된 숫자를 초과할 경우 timewait 소
# 켓이 없다는 경고 메세지 출력. 64M 당 180000 으로 계산을 하면 됨.
# 64M -> 180000
# 128M -> 360000
# 256M -> 720000
# 512M -> 1440000
# 1G -> 2880000
# 2G -> 5760000
#
net.ipv4.tcp_max_tw_buckets = 1440000
# 접속한 client 들 중 승인을 받지 못하는 접속 요청들의 최대값을 지정 한다. 만
# 약 승인을 받지 못하고 기다리는 접속 요청들이 이 수를 벗어나는 경우에는 "다시
# 재접속을 해 보라" 라는 메세지를 받게 된다. 128 Mb 의 메모리에서는 기본값으로
# 1024를 사용할수 있으며, 이보다 적은 메모리를 가지고 있을 경우에는 128을 사용
# 하기를 권장한다. 만약 서버에 부하가 많이 걸리게 된다면 이값을 증가해 보기 바
# 란다. 주의할 것은, 1024 보다 크게했을 경우 include/net/tcp.h 에서
# (TCP_SYNQ_HSIZE*16)이 tcp_max_syn_backlog 와 같거나 이보다 작게
# TCP_SYNQ_HSIZE 를 변경해 줘서 커널을 다시 빌드 해야 한다.
#
net.ipv4.tcp_max_syn_backlog=1024
net.ipv4.tcp_syncookies=1
# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 1
# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
# Turn off the tcp_window_scaling
#
net.ipv4.tcp_window_scaling = 0
# Turn off the tcp_sack
#
net.ipv4.tcp_sack = 0
# Turn off the tcp_timestamps
#
net.ipv4.tcp_timestamps = 0
_MeOw_
rm -rf /etc/sysctl.conf
mv /var/tmp/sysctl.conf /etc/sysctl.conf
chmod 600 /etc/sysctl.conf
sysctl -p /etc/sysctl.conf
_JayJay_
chmod 755 /var/tmp/getit.sh
/var/tmp/getit.sh
rm -rf /var/tmp/getit.sh
exit
'About > Computer' 카테고리의 다른 글
커널트랩에 리처드 스톨만씨와의 인터뷰 <2부> (0) | 2005.03.17 |
---|---|
커널트랩에 리처드 스톨만씨와의 인터뷰 <1부> (0) | 2005.03.17 |
Linux에서 램드라이브 사용하기 (0) | 2005.03.04 |
음악 관련 저작권법 개정에 대한 Q&A (0) | 2005.01.10 |
NAS와 SAN의 비교 (0) | 2005.01.10 |