1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98
|
#!/bin/bash
## Ecrit par RGO 28/04/2022
### BEGIN INIT INFO
# Provides: ip6tables
# Required-Start: $all
# Required-Stop:
# Should-Start: $network
# Should-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start and stop ip6tables
# Description: Controls ip6tables Firewall
### END INIT INFO
#
case "$1" in
start)
echo "Setting firewall rules..."
RET=0
###### Debut Initialisation ######
# Interdire toute connexion entrante
ip6tables -t filter -P INPUT DROP
ip6tables -t filter -P FORWARD DROP
echo - Interdire toute connexion entrante : [OK]
# Interdire toute connexion sortante
ip6tables -t filter -P OUTPUT DROP
echo - Interdire toute connexion sortante : [OK]
# Vider les tables actuelles
ip6tables -t filter -F
ip6tables -t filter -X
echo - Vidage : [OK]
# Ne pas casser les connexions etablies
ip6tables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
ip6tables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
echo - Ne pas casser les connexions établies : [OK]
###### Fin Initialisation ######
##### Debut Regles ######
# Autoriser loopback
ip6tables -t filter -A INPUT -i lo -j ACCEPT
ip6tables -t filter -A OUTPUT -o lo -j ACCEPT
echo - Autoriser loopback : [OK]
# Autoriser ping
ip6tables -t filter -A INPUT -p ipv6-icmp -j ACCEPT
ip6tables -t filter -A OUTPUT -p ipv6-icmp -j ACCEPT
echo - Autoriser ping : [OK]
# HTTP HTTPS
ip6tables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
ip6tables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
echo - Autoriser serveur Apache : [OK]
# Autoriser SFTP
ip6tables -t filter -A OUTPUT -p tcp --dport 122 -j ACCEPT
###### Fin Regles ######
echo Firewall mis a jour avec succes !
echo -e "To:me@email.com\nSubject: `hostname` FireWall Active\n`hostname` FireWall Active" | sendmail -bm -t
;;
stop)
RET=0
ip6tables -t filter -P INPUT ACCEPT
ip6tables -t filter -P FORWARD ACCEPT
ip6tables -t filter -P OUTPUT ACCEPT
ip6tables -t filter -F
echo -e "To:me@email.com\nSubject: Attention `hostname` FireWall inactif\n`hostname` FireWall inactif" | sendmail -bm -t
;;
restart)
$0 stop
$0 start
;;
status)
ip6tables -L
;;
*)
echo "Usage: /etc/init.d/ip6tables {start/stop/restart/status}"
exit 1
;;
esac
exit 0 |
Partager