방화벽 테스트에 사용할 항목(포트가 열려 있는지 여부)

방화벽 테스트에 사용할 항목(포트가 열려 있는지 여부)

따라서... 우리는 다음 명령을 사용하여 방화벽의 포트가 열려 있는지 테스트할 수 있다는 것을 알고 있습니다.

telnet SERVERIP PORT

..하지만 내가 아는 한 일부 서비스는 텔넷을 사용하여 테스트할 수 없습니다. 예를 들어 텔넷은 서비스가 사용하는 프로토콜을 모르고 텔넷은 포트가 닫혔다고 보고하지만 실제로는 서비스가 작동 중이고 달리기.

질문: 첫째: 제가 텔넷에 대해 말한 것이 맞습니까? 둘째: 서버의 포트가 열려 있는지 테스트하려면 무엇을 사용해야 합니까? (그러면 방화벽에 의해 차단되지 않습니다.) - 이를 수행할 수 있는 유닉스 도구가 있습니까?

답변1

첫 번째 질문과 관련하여 서비스가 대화형 입력을 기다리지 않을 수도 있습니다. 다른 설명도 있을 수 있습니다. 두 번째로, 지도방화벽을 테스트하는 데 사용할 수 있습니다. 많은 옵션이 있습니다.

처음 1,000개 포트 검색(기본값):

nmap -v -A -PN hostname.domainname.com

아니면 특정 범위일 수도 있습니다.

nmap -v -A -p 10000-11000 -PN hostname.domainname.com

답변2

모든 경우에 텔넷이 작동하지 않는다는 귀하의 의견이 저를 혼란스럽게 했기 때문에 임의의 포트(이 경우에는 HTTP 서버와 DICOM 서버)에 연결되어 있는 동안 빠른 네트워크 추적을 실행했습니다.

모든 경우에 텔넷은 단순히 TCP 연결을 위한 소켓을 열지만 명시적으로 줄을 입력할 때까지 소켓에서 읽거나 쓰려고 시도하지 않는다는 것을 확인할 수 있습니다.

이는 TCP 스택이 표준 TCP 핸드셰이크만 시작하고 관련된 세 개의 패킷(SYN/SYN-ACK/ACK)이 네트워크를 통해 전송되는 유일한 패킷임을 의미합니다. 물론 이는 특정 애플리케이션에만 적용되는 것은 아닙니다.

tl;dr 제 생각에는 텔넷은 실제로 그 뒤에 있는 서버가 사용하는 프로토콜에 관계없이 특정 포트가 열려 있는지 테스트하는 데 절대적으로 적합합니다.

관련 정보