Linux – How to list all open ports after blocking ports using iptables

iptableslinuxSecurity

I use these commands to block all ports and allow only some specific ports.

iptables -F  
iptables -X  
iptables -P OUTPUT ACCEPT  
iptables -P FORWARD ACCEPT  
iptables -A INPUT -i lo -j ACCEPT  
iptables -A OUTPUT -o lo -j ACCEPT  
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT  
iptables -A OUTPUT -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT  
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE    
iptables -A FORWARD -j ACCEPT    
/sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT  
/sbin/iptables -A OUTPUT -p tcp --sport 22 -j ACCEPT    
/sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT  
/sbin/iptables -A OUTPUT -p tcp --sport 80 -j ACCEPT  
/sbin/iptables -A INPUT -p tcp --dport 443 -j ACCEPT  
/sbin/iptables -A OUTPUT -p tcp --sport 443 -j ACCEPT    
/sbin/iptables -A INPUT -p tcp --dport 1723 -j ACCEPT  
/sbin/iptables -A OUTPUT -p tcp --sport 1723 -j ACCEPT    
iptables -A INPUT -p gre -j ACCEPT      
iptables -A INPUT -j DROP  
iptables -A OUTPUT -j DROP  

This uses iptables to block all ports except 80, 22, 443, 1723.

What command can I use to check which ports are open?

Best Answer

You can use nmap.

For example :

nmap -p 1-65535  127.0.0.1

will find all open ports in the range 1 to 65535. That last number is the maximum a port can have.

Related Question