Linux ETC

커널 파라미터 제어

2008.06.25 00:16

호스트웨이 조회 수:35133

커널 변수를 제어하는 방법이다. 

 sysctl -a 는 모든 커널 파라미터의 값을 출력한다. 

 우선 /etc/sysctl.conf 의 내용을 보자.

[root@linuxian root]# cat /etc/sysctl.conf
# 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.

# Controls IP packet forwarding
net.ipv4.ip_forward = 0

# Controls source route verification
net.ipv4.conf.default.rp_filter = 1

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1
[root@linuxian root]#

 위 net.ipv4.ip_forward 의 값을 1 로 변경하고 시스템을 재시작 하거나

 sysctl -w 명령을 사용하면 변경된 파라미터 값이 시스템에 적용된다.

 echo 1 > /proc/sys/net/ipv4/ip_forward 라고 해도 된다.
 
 그러나 시스템을 재시작 했을 경우 sysctl.conf 파일을 읽어들이기 때문에 값은 다시 0 으로 초기화 된다.


 SYN flooding 공격에 대비하려면 /etc/sysctl.conf 에 아래의 값들을 입력하고 sysclt -w 을 실행하거나
 
 시스템을 재시작한다.

 net.ipv4.tcp_syncookies=1
 net/ipv4/tcp_max_syn_backlog=1024

 아래는 위 파라미터에 대한 간단한 설명이다.
 
 net.ipv4.tcp_syncookies
 --> SYN패킷의 도착빈도가 일정한 횟수보다 많을 때 해당 요청을 허용하지 않을 때 사용한다.

 net/ipv4/tcp_max_syn_backlog
 --> TCP프로토콜에서 한 소켓이 동시에 SYN요청을 처리하기에기는 한계가 있는데
     이 한계가 백로그(backlog)이다. 백로그는 연결 요청이 아직 완전히 처리되지
     아니한 대기상태에 있는 큐의 길이이다. 이 백로그 큐가 꽉차게 되면 이후 들어오는
     SYN요청은 무시되며 이러한 공격이 위에서 말한 SYN Flooding공격이다.
     값을 1024이상으로 설정하려면 커널소스를 수정하고 다시 컴파일 해야 한다.

번호 제목 글쓴이 날짜 조회 수
366 특정 계정만 su 명령어 사용 file 호스트웨이 2012.05.05 34004
365 source rpm 을 사용하여 rpm 패키지 만들기 jook 2008.05.28 33709
364 /bin/false, /sbin/nologin 의 차이점 호스트웨이 2012.08.10 33621
363 시스템 시간 확인 및 동기화 하기 sylee 2008.05.15 33482
362 VSFTP 에서 사용하는 port를 변경하기 호스트웨이 2012.03.23 33302
361 Fedora8, 9 버전에서 setup -> Network configuration 메뉴가 동작하지 않을때 jook 2008.07.23 33294
360 데비안 기본 라이브러리 설치 호스트웨이 2008.06.03 33254
359 apt-get 간단 사용 방법 jook 2008.12.11 33090
358 shell 접속은 차단하고 ftp접속만 허용하기 sylee 2008.05.20 32148
357 Privilege separation user sshd does not exist 메세지 sylee 2008.06.04 32043
356 리눅스 원격 접속자 세션 종료 file 호스트웨이 2012.06.08 31776
355 multitail (다수의 파일을 tail 로 볼 수 있습니다.) HOSTWAY 2008.12.04 31589
354 head 와 tail 사용하기 sylee 2008.05.14 31410
353 fdisk 명령어를 이용하여 수동으로 파티션 나누기 file 호스트웨이 2015.11.30 31108
352 리눅스에서 NTFS 읽고 쓰기 호스트웨이 2009.04.18 30899
351 parted를 이용한 2TB 이상의 partitioning file 호스트웨이 2012.05.05 30235
350 파일 수정일자 변경하기 jook 2008.05.28 30216
349 리눅스 Sleep 명령어 file 호스트웨이 2012.08.10 30142
348 history 조회시 '날짜,시간' 표시하기 호스트웨이 2012.03.16 30075
347 vmstat 사용법 sylee 2008.05.15 30050