.SH NAME Portquiz .rj Wed 8 Apr 21:29:12 BST 2015 .SH DESCRIPTION How to quickly test egrees filtering? A remote machine that responds on all 65535 ports becomes handy. Check out http://portquiz.net: $ w3m -dump http://portquiz.net:1234 Outgoing port tester This server listens on all TCP ports, allowing you to test any outbound TCP port. You have reached this page on port 1234. Your network allows you to use this port. (Assuming that your network is not doing advanced traffic filtering.) Network service: unknown Your outgoing IP: 194.221.X.X Test a port using a command $ telnet portquiz.net 1234 Trying ... Connected to portquiz.net. Escape character is '^]'. $ nc -v portquiz.net 1234 Connection to portquiz.net 1234 port [tcp/daytime] succeeded! $ curl portquiz.net:1234 Port 1234 test successful! Your IP: 194.221.X.X $ wget -qO- portquiz.net:1234 Port 1234 test successful! Your IP: 194.221.X.X Test a port using your browser In your browser address bar: http://portquiz.net:XXXX Examples: http://portquiz.net:8080 http://portquiz.net:8 http://portquiz.net:666 You can speed up your egress scan with xargs to run 10 parallel processes: 'nf $ seq 1 65535 | xargs -P10 -I{} bash -c "nc -vzw1 portquiz.net {} 2>&1 | grep succeeded" Connection to portquiz.net 2 port [tcp/compressnet] succeeded! Connection to portquiz.net 1 port [tcp/tcpmux] succeeded! Connection to portquiz.net 8 port [tcp/*] succeeded! 'fi It also becomes handy when testing through a proxy to figure out which ports are allowed: 'nf $ echo 1 65535 | xargs -P10 -I{} bash -c "curl --proxy squid.example.com:8080 -m1 portquiz.net:{} -s 2>&1 | paste - - " Port 80 test successful! Your IP: 194.221.X.X Port 8080 test successful! Your IP: 194.221.X.X Port 443 test successful! Your IP: 194.221.X.X Port 8443 test successful! Your IP: 194.221.X.X 'fi