web-dev-qa-db-fra.com

Existe-t-il une configuration par défaut recommandée pour iptables?

J'utilise le serveur Ubuntu depuis un certain temps, mais je n'ai jamais vraiment investi de temps dans iptables. Je me demandais s'il existait un moyen recommandé de configurer iptables sur un serveur de base. Un passe-partout iptables essentiellement.

En outre, une explication de tous les ports de serveur Ubuntu les plus couramment utilisés serait très utile.

7
Mr Axilus

C'est fantastique que vous soyez intéressé par iptables.

Comme vous pouvez le constater, cependant, la courbe d'apprentissage est un peu longue.

Les bases sont

Tous les services écoutent sur les ports. Une analogie serait un complexe d'appartements, vos ports sont analogues aux numéros d'appartements.

Les ports communs sont

FTP - 21

SSH - 22

Apache - HTTP 80; HTTPS 443

Vous pouvez obtenir une liste complète des ports à partir d’une recherche google ou de/etc/services.

Cela pourrait aider aussi

https://help.ubuntu.com/10.04/serverguide/C/index.html

De là, entrez iptables. En tant que pare-feu, iptables est un moyen de limiter l’accès.

En gros, vous avez 3 grandes options.

  1. Serveurs publics, c.-à-d. Apache. Ici, vous autoriserez tout le trafic et les listes noires d'adresses IP mal intentionnées (spammeurs)

  2. Serveurs privés, c.-à-d. Ssh. Ici, vous refuserez tout le trafic et les connexions autorisées de la liste blanche.

  3. Limite. Vous pouvez autoriser le ping, mais seulement à un certain taux.

Si vous êtes nouveau sur iptables, vous pouvez commencer par ufw. ufw est une interface en ligne de commande pour iptables et est plus facile à apprendre. La syntaxe est très similaire à celle d'iptables, il est donc facile de passer d'ufw à iptables.

Voir:

https://help.ubuntu.com/community/UFW

https://help.ubuntu.com/community/IptablesHowTo

Cette information devrait vous aider à démarrer. Si vous avez un problème, n'hésitez pas à poser une question plus précise.

J'ai aussi une page d'introduction à iptables si vous voulez. Je l'ai maintenu au fil des ans avec les commentaires de personnes novices dans iptables. J'espère que cela aidera.

http://bodhizazen.com/Tutorials/iptables

8
Panther

La méthode recommandée (pour les débutants) consiste à activer ufw qui, à son tour, définit automatiquement les règles de base de iptables:

Sudo ufw enable

Fondamentalement, cela bloquera tous les paquets non sollicités (pour la liste complète des règles configurées de cette façon, voir Sudo iptables -L).

Pour pouvoir vous connecter au serveur, vous devez autoriser quelques ports, par exemple

Sudo ufw allow 22/tcp

pour permettre ssh etc.

4
arrange

Je vous recommande également d'ajouter une protection contre certains types d'analyse et les paramètres TCP inhabituels (éventuellement malveillants):


-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG NONE  -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,PSH,ACK,URG -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,PSH,URG -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,PSH,ACK,URG FIN,SYN,RST,ACK,URG -j DROP
-A INPUT -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN FIN,SYN -j DROP
-A INPUT -m state --state INVALID -j DROP

(Via hideandhack.com .)

3
sigxcpu