리눅스

리눅스 포트 상태 확인 및 포트 열기

랩퍼우26 2018. 11. 12. 22:08
728x90

# 포트 상태 확인 및 포트 열기



1. 포트 상태 확인


1.1 열려있는 모든 포트 표시


netstat -nap



-n: host명으로 표시 안함


-a: 모든소켓 표시


-p: 프로세스ID와 프로그램명 표시




1.2 LISTEN중인 포트 표시


netstat -nap | grep LISTEN



2. 특정 호스트 포트 상태 확인


특정 호스트로 접속이 불가할 때, netcat(nc) 네트워크 유틸리티를 이용하여 포트가 막혀 있는지 확인할 수 있다.



1.3 특정 포트 상태 확인


nc -z 호스트주소 포트

nc -z www.google.com 80



-z: 포트 검색



samle result)


Connection to www.google.com 80 port [tcp/http] succeeded!




1.4 특정 호스트의 포트 범위를 지정하여 열린 포트 확인


nc 호스트주소 -z 시작포트-끝포트

nc 10.20.30.40 -z 19-21



samle result)


Connection to 10.20.30.40 21 port [tcp/ftp] succeeded!


Connection to 10.20.30.40 22 port [tcp/ssh] succeeded!


Connection to 10.20.30.40 23 port [tcp/telnet] succeeded!




2. 포트 열기


리눅스 방화벽 설정 명령어인 iptables을 사용하여 포트를 오픈할 수 있다.




2.1 특정포트 외부에서 접속할 수 있도록 열기


이 명령은 외부에서 들어오는(INBOUND) TCP포트 12345의 연결을 받아들인다는 규칙을 방화벽 1번 방화벽 규칙으로 추가한다는 의미이다.


iptables -I INPUT 1 -p tcp --dport 12345 -j ACCEPT


iptables -I INPUT  -p tcp --dport 1311 -j ACCEPT



-I: 새로운 규칙을 추가한다.


-p: 패킷의 프로토콜을 명시한다.


-j: 규칙에 해당되는 패킷을 어떻게 처리할지를 정한다.




2.2 추가한 설정 조회


iptables -L -v


-L: 규칙을 출력


-v: 자세히




2.3 추가한 설정 삭제


(1)추가한 규칙의 번호로 삭제하는 방법과 (2)추가했을 때의 명령어에서 "-I"를 "-D"로 바꾸어 주는 방법이 있다.




2.3.1 규칙 번호로 삭제


iptables -D INPUT 1



2.3.2 추가한 규칙으로 삭제


iptables -D INPUT -p tcp --dport 12345 -j ACCEPT


iptables -D INPUT  -p tcp --dport 1311 -j ACCEPT



728x90