Saturday, May 28, 2016

iptables - minimum setup

This is really all a home user need:

  • HTTP / HTTPS (to use your browser)
  • PING (to outside only)
  • localhost needs to be able to communicate
  • DNS (domain name server - to understand ip/domain)
  • NTP (to update the clock)
  • Optional: SSH (port 22) only to outside.


$./iptables-gera-up.sh                                                                  
 
                                                                                       
#Generated by Dr Beco at Sat May 28 00:12:52 BRT 2016       
                            
*filter                                                     
                            
:INPUT DROP [0:0]                                                     
                  
:FORWARD DROP [0:0]                                                     
                
:OUTPUT DROP [0:0]                                                                 
     
-A INPUT -i wlan0 -p tcp -m tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT
      
-A INPUT -i eth0 -p tcp -m tcp --sport 443 -m state --state ESTABLISHED -j ACCEPT  
     
-A INPUT -i wlan0 -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT  
     
-A INPUT -i eth0 -p tcp -m tcp --sport 80 -m state --state ESTABLISHED -j ACCEPT   
     
-A INPUT -p icmp -m icmp --icmp-type echo-reply -j ACCEPT                          
     
-A INPUT -i lo -j ACCEPT
                                                                
-A INPUT -i wlan0 -p udp -m udp --sport 53 -j ACCEPT
                                    
-A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT
                                     
-A INPUT -i wlan0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
       
-A INPUT -i eth0 -p tcp -m tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
        
-A INPUT -p udp -m udp --sport 123 -j ACCEPT
                                            
-A OUTPUT -o wlan0 -p tcp -m tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT 

-A OUTPUT -o eth0 -p tcp -m tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT  
-A OUTPUT -o wlan0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
  
-A OUTPUT -o eth0 -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
   
-A OUTPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT
                            
-A OUTPUT -o lo -j ACCEPT
                                                               
-A OUTPUT -o wlan0 -p udp -m udp --dport 53 -j ACCEPT
                                   
-A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT
                                    
-A OUTPUT -o wlan0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT  

-A OUTPUT -o eth0 -p tcp -m tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT   
-A OUTPUT -p udp -m udp --dport 123 -j ACCEPT
                                           
COMMIT
                                                                                  
#Done Sat May 28 00:12:52 BRT 2016
                                                      

No comments: