대상 서버의 포트가 열려있는지 확인하는 방법
부제 ) telnet 없이 포트 오픈 확인하는 방법
대부분의 서버는 보안 문제로 ssh나 http, telnet 을 사용할 수 없는 경우가 있다.
이런 경우에 대상 버의 포트가 열려 있는지 확인 하는 방법에 대해서 삽질하다, 잊으면 안될것 같아서 남겨본다.
Linux의 경우이다.
echo > /dev/tcp/IP/PORT
bash의 내장 기능으로 자세한 내용은 여기 에서 확인 할 수 있다.
포트가 열린 경우라면, 아무 메세지가 나오지 않는다. echo $?
해보면 정상적인 프로세스의 종료를 의미하는 0이 나온다.
포트가 닫힌 경우라면, 에러메세지가 나오고 echo $?
의 결과가 1이 나온다.
포트가 열린 경우
$ echo > /dev/tcp/127.0.0.1/22
$ echo $?
0
포트가 닫힌 경우
$ echo > /dev/tcp/127.0.0.1/10002
bash: connect: 연결이 거부됨
bash: /dev/tcp/127.0.0.1/10002: 연결이 거부됨
$ echo $?
1
curl -v telnet://IP:PORT
curl의 파라미터중 url에 telnet 스키마가 허용된다.
포트가 열린 경우
$ curl -v telnet://IP:PORT
* About to connect() to IP port PORT (#0)
* Trying IP... connected
* Connected to IP (IP) port PORT (#0)
포트가 닫힌 경우
$ curl -f telnet://IP:PORT
curl: (7) couldn't connect to host
728x90
반응형
'OS > Linux' 카테고리의 다른 글
[Linux] 파일 압축 및 해제 (0) | 2021.03.20 |
---|---|
[Linux etc tip] 접속 로그 분석 하기 (0) | 2021.02.15 |
[Linux] 웹 서버 (0) | 2020.12.13 |
[Linux] 원격 관리 (0) | 2020.12.13 |
[Linnux] 네트워크 설정 및 점검 (0) | 2020.12.05 |