터미널의 명령을 사용하여 프록시가 SOCKS인지 HTTP인지 어떻게 알 수 있나요?

터미널의 명령을 사용하여 프록시가 SOCKS인지 HTTP인지 어떻게 알 수 있나요?

Linux 터미널에서 실행할 수 있는 간단한 명령이 있습니까?프록시가 SOCKS인지 HTTP인지 확인하려면?

답변1

관련 포트 중 어느 포트가 열려 있는지 확인할 수 있습니다(예: 텔넷 사용). Socks는 일반적으로 포트 1080을 사용하고 HTTP는 일반적으로 80, 443, 8443 또는 8080을 사용합니다.

답변2

그 외에는 SOCKS인지 HTTP인지 시도해 보면 안 됩니다.

http 프록시인지 테스트하려면 다음을 수행하세요.

set http_proxy = http://1.0.0.1:8080 
wget --proxy=on http://www.google.com/

이렇게 하면 Google의 HTML 루트가 다운로드되며, 해당 콘텐츠에 올바른 내용이 있으면 http 프록시임을 알 수 있습니다.

답변3

확인 하려면 다음 쉘 명령을 사용하십시오 curl.

ip=127.0.0.1
port=8080
(timeout 2 curl -x socks5://$ip:$port -qs -o/dev/null http://example.com/ && printf "socks5\t$ip\t$port\n") \
|| (timeout 2 curl -x socks4://$ip:$port -qs -o/dev/null http://example.com/ && printf "socks4\t$ip\t$port\n") \
|| (timeout 2 curl -x http://$ip:$port -qs -o/dev/null http://example.com/ && printf "http\t$ip\t$port\n")

전체 스크립트를 보려면 다음을 확인하세요.check_proxies.sh파일.

답변4

내 SLES11 VM에서 포트에 대해 socklist다음을 실행합니다.grep

dev-s11:~ # socklist | grep 22
tcp 22 21112 0 4345 3 sshd
tcp 22 10473174 0 32616 3 sshd

SSH로 관리되는지 여부를 알려줍니다. 기본 포트를 사용하는 경우 http는 80이고 ssh는 22입니다. 그러면 시작됩니다. 더 자세한 내용이 필요하면 더 많은 질문을 하십시오.

관련 정보