nc -zv 로 포트 연결 테스트
이전 단계에서는 netstat 및 ss를 사용하여 열린 포트를 나열하는 방법을 배웠습니다. 이제 nc 명령 (netcat) 을 사용하여 특정 포트에 실제로 연결할 수 있는지 테스트해 보겠습니다. nc는 TCP 또는 UDP 를 사용하여 네트워크 연결에서 읽고 쓸 수 있는 다용도 네트워킹 유틸리티입니다.
다음 옵션과 함께 nc를 사용합니다.
-z: nc가 데이터를 전송하지 않고 수신 데몬을 스캔하도록 지정합니다. 이는 포트가 열려 있는지 확인하는 데 유용합니다.
-v: 자세한 출력을 활성화하여 연결 시도에 대한 자세한 내용을 표시합니다.
이전 단계에서 수신 대기 중인 것을 확인한 포트 22(SSH) 에 대한 연결을 테스트합니다. IP 주소 127.0.0.1 또는 호스트 이름 localhost로 참조할 수 있는 로컬 머신에 대한 연결을 테스트합니다.
아직 열려 있지 않다면 터미널을 엽니다.
다음 명령을 입력하고 Enter 키를 누릅니다.
nc -zv 127.0.0.1 22
다음과 유사한 출력을 볼 수 있습니다.
Connection to 127.0.0.1 22 port [tcp/ssh] succeeded!
이 출력은 nc가 로컬 머신의 포트 22 에 성공적으로 연결할 수 있었음을 확인합니다.
이제 이 환경에서 기본적으로 웹 서버가 실행되지 않으므로 열려 있지 않을 가능성이 높은 포트, 예를 들어 포트 80(HTTP) 을 테스트해 보겠습니다.
다음 명령을 입력하고 Enter 키를 누릅니다.
nc -zv 127.0.0.1 80
다음과 유사한 연결 거부 또는 시간 초과를 나타내는 출력을 볼 수 있습니다.
nc: connect to 127.0.0.1 port 80 (tcp) failed: Connection refused
이 출력은 nc가 포트 80 에 연결할 수 없음을 보여줍니다. 이는 해당 포트에서 서비스를 수신 대기하지 않기 때문에 예상되는 결과입니다.
nc -zv를 사용하면 현재 위치에서 특정 포트에 도달하고 열려 있는지 빠르고 쉽게 확인할 수 있습니다.
이 랩을 완료하려면 계속을 클릭하십시오.