>> Delete Reply from No. 28571 article
No. RE: netstat -na 로 확인 후 특정한 연결을 끊을 수 있는
방법!

등록 2001-04-28 01:26:00 By localhost     조회 2
이름 무정한    

		:
: 안녕하세요...
:
: netstat -na 로 현재의 연결을 확인한후
: 특정 ip에서 연결된 컨넥션을 끊을 수
: 있는 방법좀 가르쳐주세요...
:
: 감사합니다.
 수동으로 ip를 확인하고 그 ip로부터의 모든
연결을 끊는 방법중 가장 간단한 것은
 #route add -host [target_ip] reject
 입니다.
 이렇게 하면 일단 연결은 되지 않습니다.
 적용된 routing 테이블에서 앞서의 명령으로 추가된
ip를 없애려면
 #route del -host [target_ip] reject
 하시면 됩니다.
 특정 아이피로 부터 특정 포트로의 연결을 죽이는
스크립트를 다음과 같이 만들어 보았습니다.
충분한 테스트를 통한 것이 아니므로 더 좋은 의견이 있으면
가르침을 부탁드립니다.
 --------------- cut here --------------------
#!/bin/sh
function succ {
        echo -n "["
        echo -en "33[1;32m"
        echo -n "성공"
        echo -en "33[0;39m"
        echo "]"
}
 f
unction fail {
        echo -n "["
        echo -en "33[1;31m"
        echo -n "실패"
        echo -e
n "33[0;39m"
        echo "]"
        exit 0;
}
 function fail_msg {
        echo -n "["
        echo -
en "33[1;31m"
        echo -n "$1"
        echo -en "33[0;39m"
        echo "]"
        exit 0;
}
 fun
ction print_usage {
        echo -en "33[1;36m"
        echo "+------------------------------------------------
------------------------- "
        echo -n "|"
        echo -en "33[1;31m"  
        echo -e "  사용
법: 	 ${1}"
        echo -en "33[1;36m"
        echo "+-------------------------------------------------------
------------------ "
        echo -en "33[0;39m"
        exit 1
}
 THIS_UID=`id -u`
if [ $THIS_UID -ne 0 ]; the
n
        fail_msg "root 만이 이 스크립트를 실행할 수 있습니다."
fi
 if [ $# != 2 ]; then
      
  print_usage "$0 remote_ip local_port"
fi
 remote_ip=$1
local_port=$2
 PID_TO_KILL=`netstat -ntp | awk '{print $5,$7}'
 | grep $remote_ip | grep -v ":$local_port" | awk '{print $2}' | cut -d'/' -f1`
 for proc in $PID_TO_KILL
do
       
 ISPROC=`echo $proc | grep -c "^[0-9]{1,}$"`
        if [ $ISPROC -eq 1 ]; then
                ISYN="FOO"

                while [ "$ISYN" != "OK" ]; do
                echo -n "+ 프로세스 ${proc}을 죽일
까요? (Y/n) "
                read ANS
                ISYN=`echo $ANS | perl -pi -e "s/[Y|y|N|n]/OK/g
"`
                done
                 case "$ANS" in
                        Y|y)
    
                            echo -n "       - PID:${proc}죽이기 ........ "
                
                kill -9 $proc && succ || fail
                                ;;
          
              N|n)
                                ;;
                esac
        fi

done--외로워라 이네몸은 뉘와함께 놀아날꼬.
[관리자] 패스워드를 입력 하십시오. 답장이 존재하면 함께 삭제됩니다.[ 목록 | 이전 ]
패스워드:    

Copyleft 1999-2026 by JSBoard Open Project
Theme Designed by IDOO All right reserved