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.
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.
Serveurs publics, c.-à-d. Apache. Ici, vous autoriserez tout le trafic et les listes noires d'adresses IP mal intentionnées (spammeurs)
Serveurs privés, c.-à-d. Ssh. Ici, vous refuserez tout le trafic et les connexions autorisées de la liste blanche.
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.
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.
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 .)