Rechercher dans ce blog

SEEDBOX : Règles IPTABLES

 Afin d'ouvrir les ports du pare feu du serveur, il faut éditer les règles que nous avions définis.

 On ouvre notre fichier
nano /etc/init.d/firewall

 Nous ajoutons à la suite (Décommenter # et changer les ports selon utilisation):

#Transmission
#iptables -t filter -A INPUT -p tcp --dport 3500 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 3500 -j ACCEPT
#iptables -t filter -A INPUT -p tcp --dport 35000 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 35000 -j ACCEPT
#iptables -t filter -A INPUT -p udp --dport 35000 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 35000 -j ACCEPT
#Si tracker public pour transmission
#iptables -t filter -A OUTPUT -m owner --gid-owner debian-transmission -j ACCEPT

#qBittorrent
#iptables -t filter -A INPUT -p tcp --dport 8080 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 8080 -j ACCEPT
#iptables -t filter -A INPUT -p tcp --dport 36000 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 36000 -j ACCEPT
#iptables -t filter -A INPUT -p udp --dport 36000 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 36000 -j ACCEPT
#Si tracker public pour qBittorrent
#iptables -t filter -A OUTPUT -m owner --gid-owner USER -j ACCEPT

#ruTorrent
#iptables -t filter -A INPUT -p tcp --dport 3700 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 3700 -j ACCEPT
#iptables -t filter -A INPUT -p tcp --dport 37000 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 37000 -j ACCEPT
#iptables -t filter -A INPUT -p udp --dport 37000 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 37000 -j ACCEPT

#Deluge
#iptables -t filter -A INPUT -p tcp --dport 3800 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 3800 -j ACCEPT
#iptables -t filter -A INPUT -p tcp --dport 38000 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 38000 -j ACCEPT
#iptables -t filter -A INPUT -p udp --dport 38000 -j ACCEPT
#iptables -t filter -A OUTPUT -p udp --dport 38000 -j ACCEPT
#Si tracker public pour Deluge
#iptables -t filter -A OUTPUT -m owner --gid-owner USER -j ACCEPT

#PLEX
#iptables -t filter -A INPUT -p tcp --dport 32400 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 32400 -j ACCEPT

#Pour Downloadville.net et HDF.world (torrent)
#iptables -t filter -A INPUT -p tcp --dport 2710 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 2710 -j ACCEPT

#Pour YggTorrent (torrent)
#iptables -t filter -A INPUT -p tcp --dport 8080 -j ACCEPT
#iptables -t filter -A OUTPUT -p tcp --dport 8080 -j ACCEPT

#POUR TMG (Trident Media Guard ou MEDIAGUARD ou MEDIAGUARD)
#iptables -A INPUT -s 195.5.216.0/30 -j DROP
#iptables -A OUTPUT -d 195.5.216.0/30 -j DROP
#iptables -A INPUT -s 194.79.142.64/30 -j DROP
#iptables -A OUTPUT -d 194.79.142.64/30 -j DROP
#iptables -A INPUT -s 213.215.34.160/29 -j DROP
#iptables -A OUTPUT -d 213.215.34.160/29 -j DROP
#iptables -A INPUT -s 213.215.33.248/30 -j DROP
#iptables -A OUTPUT -d 213.215.33.248/30 -j DROP
#iptables -A INPUT -s 193.107.240.0/22 -j DROP
#iptables -A OUTPUT -d 193.107.240.0/22 -j DROP
#iptables -A INPUT -s 193.105.197.0/24 -j DROP
#iptables -A OUTPUT -d 193.105.197.0/24 -j DROP
#iptables -A INPUT -s 195.191.244.0/23 -j DROP
#iptables -A OUTPUT -d 195.191.244.0/23 -j DROP
#iptables -A INPUT -s 82.138.70.128/26 -j DROP
#iptables -A OUTPUT -d 82.138.70.128/26 -j DROP
#iptables -A INPUT -s 82.138.74.0/25 -j DROP
#iptables -A OUTPUT -d 82.138.74.0/25 -j DROP

#HADOPI
#iptables -A INPUT -s 90.80.100.192/28 -j DROP
#iptables -A OUTPUT -d 90.80.100.192/28 -j DROP
#iptables -A INPUT -s 5.23.42.12/30 -j DROP
#iptables -A OUTPUT -d 5.23.42.12/30 -j DROP
#iptables -A INPUT -s 195.5.217.72/29 -j DROP
#iptables -A OUTPUT -d 195.5.217.72/29 -j DROP


 On recharge notre fichier pour que les règles prennent effet.

/etc/init.d/firewall




**NOTE**

Pour les IP TMG et HADOPI
chercher IP ici : https://apps.db.ripe.net/db-web-ui/#/fulltextsearch
calculer le masque ici : http://www.hobbesworld.com/reseaux/calcip.php#rech

Il faut configurer iptables en sortie autorisée par rapport au processus (transmission-daemon ou qbittorent) pour avoir une ouverture des ports dynamiques.
Il faut premièrement récupérer l’id (Colonne USER) du processus avec la commande
lsof -ni

Puis rajouter aux regles IPTABLES

iptables -t filter -A OUTPUT -m owner --gid-owner debian-transmission -j ACCEPT
ou
iptables -t filter -A OUTPUT -m owner --gid-owner user -j ACCEPT

A adapter selon l'id obtenu (l'utilisateur qui a lancer la seedbox généralement)

** FIN NOTE **

IPTABLES : création fichier avec règles de base

Création d'un fichier avec les regles IPTABLES (firewall) sur un serveur Debian (valable aussi pour Ubuntu)



POUR RAPPEL :

    -t : vaudra par défaut « filter »

    -A : servira à indiquer le sens du trafic : INPUT (entrant) ou OUTPUT (sortant)

    -p : indique le protocole (TCP ou UDP en principe)

    --dport et --sport : respectivement port destination et port source (sur un serveur, nous utilisons principalement dport)

    -j : comment traiter le paquet avec ACCEPT (pour accepter) et DROP (pour refuser) le paquet


Création du fichier :

/etc/init.d/firewall



On insère toutes ces règles (Attention à changer le port SSH par le votre !!! 22 étant celui par défaut):


#!/bin/sh

# Vide les tables actuelles
iptables -t filter -F

# Vide les règles actuelles
iptables -t filter -X

# Bloque tout le trafic
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

# Autorise les connexions déjà établies
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

# Autorise "localhost" (loopback)
iptables -t filter -A INPUT -i lo -j ACCEPT
iptables -t filter -A OUTPUT -o lo -j ACCEPT

# Autorise ICMP (Ping)
iptables -t filter -A INPUT -p icmp -j ACCEPT
iptables -t filter -A OUTPUT -p icmp -j ACCEPT

# NTP (horloge du serveur)
iptables -t filter -A OUTPUT -p udp --dport 123 -j ACCEPT

# SSH
iptables -t filter -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 22 -j ACCEPT

# HTTP
iptables -t filter -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 80 -j ACCEPT

# HTTPS
iptables -t filter -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 443 -j ACCEPT

# FTP
iptables -t filter -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 20:21 -j ACCEPT

# Mail SMTP
iptables -t filter -A INPUT -p tcp --dport 25 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 25 -j ACCEPT

# Mail POP3
iptables -t filter -A INPUT -p tcp --dport 110 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 110 -j ACCEPT

# Mail POP3S
iptables -t filter -A INPUT -p tcp --dport 995 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 995 -j ACCEPT

# Mail IMAP
iptables -t filter -A INPUT -p tcp --dport 143 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 143 -j ACCEPT

# DNS
iptables -t filter -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p tcp --dport 53 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 53 -j ACCEPT
iptables -t filter -A OUTPUT -p udp --dport 53 -j ACCEPT



Rendre le fichier exécutable

chmod +x /etc/init.d/firewall

Démarrage des règles (ou redémarre)

/etc/init.d/firewall

Ajout aux scripts appelés au démarrage

update-rc.d firewall defaults




Note : Si un jour on veut retirer ces règles du démarrage

update-rc.d -f firewall remove



Gestion des scripts

Une manière simple de gérer ses script et d'y accéder est d'installer nautilus-scripts-manager

Installation :

sudo apt-get install nautilus-scripts-manager

Un dossier caché ~/.local/share/nautilus/scripts est crée.

Utilisation :

On peut organiser ses scripts en créant des dossiers dans ce répertoire.
En copiant ses scripts ici, ceux ci seront automatiquement disponible via le clic droit de la souris