Iptables firewall - réseaux et sécurité - Linux et OS Alternatifs
Marsh Posté le 28-01-2009 à 08:10:36
opadmc a écrit : Bonjour |
Bonjour,
opadmc a écrit : je voudrai savoir s il y a un moyen d'autoriser a deux adresses ip l'acces d un site web et que tous les autres soit refusee. |
Politique par défaut à DROP en INPUT
Autorisation de l'adresse a1 (-s, --source [!] address[/mask] cf le man) vers le port 80 (--dport) de ton serveur en input
Autorisation de l'adresse a2 (-s, --source [!] address[/mask] cf le man) vers le port 80 (--dport) de ton serveur en input
Tu peux mettre les deux critères de sélection (-s et --dport) dans la même ligne.
A ces deux lignes je rajouterais le mécanisme stateful de netfilter (-m state NEW,ESTABLISHED par exemple)
Trois solutions :
- soit tu restes ouvert entièrement
- soit tu n'autorise que le trafic à destination de a1 et a2 en provenance de ton port 80 (--sport) (politique à drop puis ouverture au cas par cas)
- soit tu utilises une solution moderne : le mécanisme stateful de netfilter (tu n'autorises que le trafic en l'état ESTABLISHED)
opadmc a écrit : Est ce qu il faut ouvrir le port 53 en input/output pour faire de la resolution DNS ( client, il n y a pas bind sur la machine) ? |
Si tu n'as pas de serveur DNS dessus, et que tu ne veux pas faire de résolution DNS ça ne sert à rien.
Cependant tu ne comptes pas le mettre à jour ?
Marsh Posté le 28-01-2009 à 08:12:13
Je te conseilles sérieusement de regarder :
- http://irp.nain-t.net/doku.php/130netfilter:start (très bon site qui explique le fonctionnement de netfilter/iptables)
- de regarder le man (toutes les options sont décrites)
- d'utiliser le mécanisme de stateful de netfilter (cf. le man et le site que je t'ai donné).
Marsh Posté le 29-01-2009 à 02:01:32
Bonjour a tous
Merci..
oui je vais le mettre a jour. j'ai essayer sans ouvrir le port 53, la machine met au mons 5 mn a demarrer. et ca bloque pas mal de temps sur sendmail. Je crois que je vais couper sendmail ( car c est un serveur apache sans compte mail).
Marsh Posté le 10-02-2009 à 14:37:08
Et donc les lignes correcte a inserer pour l'accés au serveur web depuis une autre machine du réseau local ca donne quoi ? car je bloque aussi sur ce genre de probleme
J'ai lu la plupart des sites notamment ce lien mais mes regles ne marche pas !!
Marsh Posté le 10-02-2009 à 14:45:16
J'utilise la logique suivante :
1. Mise en place des règles pour le stateful
2. DNAT des requêtes provenant d'internet arrivant sur l'interface WAN et à destination du port 80 vers l'adresse IP "LAN" de mon serveur (chaine -t nat)
3. Autorisation des nouvelles connexion (-m state --state NEW) sur le port 80 vers l'adresse IP "LAN" de mon serveur.
Marsh Posté le 10-02-2009 à 14:49:53
Oui mais si tu simule l'internet avec un serveur web ce que je fait et dont je n'arrive pas a trouver les bonnes regles
tu n'utilise pas de DNAT ! donc a priori en travaillant sur du local il faut juste ajuster les regles sur la table filter ! ces 2 lignes sont elles bonnes :
# iptables -t filter -A OUTPUT -o eth0 -s 192.168.147.10 -p tcp --dport 80 -j ACCEPT
# iptables -t filter -A INPUT -i eth3 -d 192.168.0.10 -p tcp --sport 80 -j ACCEPT
Juste avant je vide les regles avec -F et -X
Puis j'ai une politique de DROP sur les 3 chaines FILTER
Routage activer sur le serveur LINUX , je n'ai juste qu'a trouver les bonnes regles pour laisser passer juste ces connexions
Marsh Posté le 10-02-2009 à 14:56:41
shurik84> Crée un nouveau topic, uniquement pour ton problème. Là t'es en train de t'étaler sur 1000 topics à la fois pour la même problématique, sans jamais rappeler le contexte, ta configuration... bref comment veux tu qu'on sache ce que tu veux faire. Nous ne sommes pas devin !
Nous ne pouvons t'aider correctement si tu persistes dans cette méthode !
=> Crée un nouveau topic, prend le temps d'expliquer correctement ton architecture réseau, subnet, interface, configuration, historique...
Marsh Posté le 10-02-2009 à 14:58:21
o'gure a écrit : shurik84> Crée un nouveau topic, uniquement pour ton problème. Là t'es en train de t'étaler sur 1000 topics à la fois pour la même problématique, sans jamais rappeler le contexte, ta configuration... bref comment veux tu qu'on sache ce que tu veux faire. Nous ne sommes pas devin ! |
C'est ce que je vais faire car je bloque si ce n'est galere et en je ne trouve pas les bonne solutions c'est pas faute d'avoir chercher ! Encore désolé pour la propagation
Marsh Posté le 28-01-2009 à 02:00:35
Bonjour
J ai un serveur web et je me casse la tete sur iptables.
je voudrai savoir s il y a un moyen d'autoriser a deux adresses ip l'acces d un site web et que tous les autres soit refusee.
Est ce qu il faut ouvrir le port 53 en input/output pour faire de la resolution DNS ( client, il n y a pas bind sur la machine) ?
# Allow SSH connections on tcp port 22
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Allow DNS
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
#Allow port tcp 80 (webserver Apache)
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#Allow por tcp 443 SSL
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
# Set default policies for INPUT, FORWARD and OUTPUT chains
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Set access for localhost
iptables -A INPUT -i lo -j ACCEPT