Configuration d'un firewall

On crée un script qui se lancera à chaque démarrage

sudo nano /etc/init.d/firewall

Voici un exemple :
Attention au port SSH, en cas d'erreur vous n'aurez plus accès à votre serveur !

#!/bin/sh
### BEGIN INIT INFO
# Provides:      iptables 
# Required-Start: 
# Should-Start: 
# Required-Stop: 
# Should-Stop: 
# Default-Start:   2 3 4 5 
# Default-Stop:       0 1 6 
# Short-description:   iptables 
# Description:       Firewall 
### END INIT INFO   
 
# Vider les tables actuelles
iptables -t filter -F
 
# Vider les règles personnelles
iptables -t filter -X
 
# Interdire toute connexion entrante et sortante
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP
 
# ---
 
# Ne pas casser les connexions etablies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
 
# Autoriser loopback
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT
 
# ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT
 
# ---
 
# SSH In/Out
iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT
 
# DNS Out
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT
 
# NTP Out
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT
 
# HTTP Out 
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT  
 
# HTTPS Out
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT  
 
# FTP Out
modprobe ip_conntrack_ftp
iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT  
 
# Mail SMTP:25 and 587 Out
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 587 -j ACCEPT
 
# Samba 137,138,139,445
iptables -t filter -A INPUT -p udp --dport 137 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 138 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 445 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 137 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 138 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 139 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 445 -j ACCEPT
 
#GPG key 11371 output
iptables -t filter -A OUTPUT -p tcp --dport 11371 -j ACCEPT

On rend le script éxecutable et on le démarre automatiquement

sudo chmod +x /etc/init.d/firewall
sudo update-rc.d firewall defaults
  • Partager le signet (social bookmarking)
  • Partager "Configuration d'un firewall" sur del.icio.us
  • Partager "Configuration d'un firewall" sur Digg
  • Partager "Configuration d'un firewall" sur blogmarks
  • Partager "Configuration d'un firewall" sur Google
  • Partager "Configuration d'un firewall" sur Facebook
  • Partager "Configuration d'un firewall" sur Twitter