커피닉스, 시스템 엔지니어의 쉼터
  [튜닝] 솔라리스에서 네트워크 파라미터 설정 작성일 : 2003/09/04 14:29
 
  • 글쓴이 : 좋은진호 ( http://coffeenix.net/ )
  • 조회수 : 12113
     
    글쓴이 : 좋은진호(truefeel, http://coffeenix.net/ )
    작성일 : 2001.4.18
    수정일 : 2001.7.16
    정리일 : 2003.9.4(목)

    솔라리스에서는 리눅스의 sysctl 명령어 처럼 ndd를 이용해서 커널 파라미터를 변경할 수 있다.

    1) 커널 네트워크 파라미터 설정

    ping 응답 무시하고, 포워딩을 막는 IP관련 네트워크 파라미터를 설정하는 방법은 다음과 같다.
    또한 솔라리스에서는 그 의미가 약한 SYN flooding 공격에 대처하는 파라미터 설정도 마지막
    3줄에 포함뫼었다.

    ------------------------------------------------
    # IP forwarding을 하지 않음
    ndd -set /dev/ip ip_forwarding 0
    ndd -set /dev/ip ip_strict_dst_multihoming 0
    ndd -set /dev/ip ip_forward_directed_broadcasts 0
    ndd -set /dev/ip ip_forward_src_routed 0

    # echo request Broadcast 핑 응답 무시
    ndd -set /dev/ip ip_respond_to_echo_broadcast 0

    # TCP parameter
    ndd -set /dev/tcp tcp_ip_abort_cinterval 60000
    ndd -set /dev/tcp tcp_conn_req_max_q0 2048
    ndd -set /dev/tcp tcp_conn_req_max_q 512
    ------------------------------------------------

    TCP 파라미터에 대해 설명하면.

    tcp_ip_abort_cinterval :
    연결이 있은 후 정상적으로 established 가 안되면  연결을 끊을 시간을 설정한다.
    즉, Abort timer 값을 정한다.
    단위는 밀리초. 따라서 60000 = 60초임 (default=180000 = 180초)
    tcp_conn_req_max_q0 :
    완벽히 접속되지 않은 상태의 연결(half-open)을 위한 큐(default=1024)
    tcp_conn_req_max_q :
    established 상태의 연결을 위한 큐 (default=128)

    2) 부팅용 스크립트

    부팅용 스크립트를 여기에 두었다.

    http://coffeenix.net/doc/misc/tf.tcpparameter.txt

    tf.tcpparameter.txt를 /etc/init.d에 옮기고
    rc2.d에서 링크를 걸어 부팅할 때 실행되도록 하면 된다.

    ------------------------------------------------
    # mv tf.tcpparameter.txt /etc/init.d/tf.tcpparameter
    # cd /etc/rc2.d 또는 cd /etc/rc3.d
    # ln -s ../init.d/tf.tcpparameter S99tcpparameter
    ------------------------------------------------

    ※ 참고자료

    http://www.certcc.or.kr/paper/tr2001/tr2001-01/Solaris%20Network%20Kernel%20Tunning%20for%20Security.html


    커피닉스, 시스템 엔지니어의 쉼터 / URL : http://coffeenix.net/board_view.php?bd_code=52