IpTables / Serveur Counter Strike

IpTables / Serveur Counter Strike - Linux et OS Alternatifs

Marsh Posté le 07-06-2002 à 14:53:30    

J'ai installé un serveur counter 1.4, et lors du lancement, il se connecte pour dl un truc et donc mon firewall le bloquais.
 
En le virant, tous se lance parfaitement. Je me suis appercu par la meme occasion que le surf n'etais pas possible sur mon serveur.
 
J'ai donc rajouté ces regles :
 
iptables -A INPUT -i ppp0 -j ACCEPT
iptables -A OUTPUT -o ppp0 -j ACCEPT
 
Mais ces regles signifient que j'accepte tout en entrée/sortie, non ?
 
Si c'est bien cela, le firewall ne sert plus a rien...
 
Donc je voudrais savoir quelle regle appliquer pour autoriser le surf sur le serveur !
 
Merci.


Message édité par Kyle le 06-07-2002 à 14:54:42
Reply

Marsh Posté le 07-06-2002 à 14:53:30   

Reply

Marsh Posté le 07-06-2002 à 15:05:28    

chez moi, j'ai :
#création d'une nouvelle règle
iptables -N regle
 
iptables -A regle -m state --state NEW -i! ippp0 -j ACCEPT
iptables -A regle -m state --state ESTABLISHED,RELATED -j ACCEPT
 
#application de la règle au partage de connection
iptables -A INPUT -j regle
iptables -A FORWARD -j regle
iptables -A INPUT -p tcp -i eth0 -s 192.168.0.0/24 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
 
qui bloque toutes les connexions entrantes ( depuis internet) et qui n'accepte que les sortantes et celles reliées (ex: le FTP cause sur le port 21 et sur un autre pour l'identif).
 
+ de détails là :
http://christian.caleca.free.fr/  rubrique Netfilter


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 07-06-2002 à 15:29:15    

Mjules,
 
Ces règles te permettent donc de ne rien accepter de l'extérieur, mise à part les cnx sur les ports < 1024 ?
 
Les requetes émanent des postes clients sont donc acceptés ? Et tout ce qui ne répond pas à une requete de ton LAN est rejeté c'est ca ?
 
J'ai vraiment du mal avec la syntaxe et le fonctionnement de iptables.  
 
Rien ne m'empeche de rajouter une regle ds ce genre :

Code :
  1. iptables -t nat -A PREROUTING -i ppp0 -p udp --dport $unport -j DNAT --to $machine1234:$unport


 
?
 
Quelle est la règle qui va prendre le dessus si on on refuse les cnx entrantes ? Cette regle de forwarding de port va fonctionner ?


Message édité par Evadream -jbd- le 06-07-2002 à 15:33:40
Reply

Marsh Posté le 07-06-2002 à 15:45:14    

Je suis pas un expert de Iptables (au contraire de l'auteur du site + haut) mais je crois que iptables prend en compte les règles dans l'ordre ou elles viennent.  
si tu fermes tout puis que tu lui dit de tout ouvrir, il va tout ouvrir.
 
iptables -A regle -m state --state NEW -i! ippp0 -j ACCEPT
En fait, la première règle refuse toute connexion entrantes par mon modem (un RNIS donc ippp0) ou + exactement, elle accepte toute nouvelle connexion n'entrant pas par mon modem (donc les sortantes)
 
iptables -A regle -m state --state ESTABLISHED,RELATED -j ACCEPT
la deuxième que toute les connexions établies ou liées à d'autres sont acceptées.
 
ensuite, j'applique ces règles au connexions entrantes sur ma machines ( chaine INPUT) et au connexion passant à travers ma machine (chaine FORWARD)
puis, j'accepte toute connexion TCP entrante sur ma machine venant du réseau local  (des IP 192.198.0.x) via ma carte réseau (eth0)
 
Enfin, je ne l'ai pas mis là, mais j'ai une règle qui fait du NAT pour que mon réseau local accède à Internet.
 
 
Pour ta règle, je pense qu'elle va marcher si tu la mets à le fin de ton script pour iptables (donc après avoir tout bloqué).


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 07-06-2002 à 15:52:42    

il me faudrais quoi comme regle pour accepter les connexion http sur mon serveur ?

Reply

Marsh Posté le 07-06-2002 à 16:07:48    

un truc du genre :
iptables -A INPUT -p tcp -i ppp0 ( ou eth0 si c'est sur un réseau local, o ippp0 pour une carte RNIS ) --sport 80 (ou --dport, là je sais pas) -j ACCEPT
 
si tu veux accepter tout les ports, tu enlèves l'option --sport (ou dport)


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 07-06-2002 à 16:12:25    

Meme sans aucun port ca ne marche pas...
Par ex sur le site tf1.fr le navigateur me met hote inconnu :(

Reply

Marsh Posté le 07-06-2002 à 16:19:39    

Kyle a écrit a écrit :

Meme sans aucun port ca ne marche pas...
Par ex sur le site tf1.fr le navigateur me met hote inconnu :(  




 
Attends, tu veux accepter les connexions sortantes sur ton Serveur ou les entrantes ? parce que je t'ai donné une règle pour le 2° cas; pas pour le premier.


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
Reply

Marsh Posté le 07-06-2002 à 16:24:54    

pour les 2, ce serais bien

Reply

Marsh Posté le 08-06-2002 à 03:17:56    

si tu veux pouvoir surfer a partir de ton serveur, il te faut ca:
 
#autoriser le dns
iptables -A INPUT -i ppp0 -p tcp --sport 53 ! --syn -j ACCEPT
iptables -A INPUT -i ppp0 -p udp --sport 53 -j ACCEPT
iptables -A OUTPUT -o ppp0 -p tcp --dport 53 -j ACCEPT
iptables -A OUTPUT -o ppp0 -p udp --dport 53 -j ACCEPT
 
#le web:
iptables -A INPUT -i ppp0 -p tcp --sport 88 ! --syn -j ACCEPT
iptables -A OUTPUT -o ppp0 -p tcp --dport 80 -j ACCEPT
 
etc...
 
edit: le web, c'est port 80 les deux, faute de frappe


Message édité par apolon34 le 06-08-2002 à 15:52:04
Reply

Marsh Posté le 08-06-2002 à 03:17:56   

Reply

Marsh Posté le 08-06-2002 à 10:36:51    

Ca ne marche pas non plus :(
 
Voila mon script complet (récupéré sur lea linux et adapté a mon utilisation) :
 
#!/bin/sh
# Script de firewall /etc/firewall.sh
 
# Activation forwarding
 
echo 1 > /proc/sys/net/ipv4/ip_forward
 
# Chargement module ip_tables
 
/sbin/modprobe ip_tables
 
# Chargement de modules supplémentaires
# pour la translation d'adresse, IRC et FTP
 
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_nat_irc
/sbin/modprobe iptable_filter
/sbin/modprobe iptable_nat
 
# Vidage des règles
 
/sbin/iptables -F
/sbin/iptables -X
 
# On logg et on refuse
 
/sbin/iptables -N LOG_DROP
/sbin/iptables -A LOG_DROP -j LOG --log-prefix '[IPTABLES DROP] : '
/sbin/iptables -A LOG_DROP -j DROP
 
# On logg et on accepte
 
/sbin/iptables -N LOG_ACCEPT
/sbin/iptables -A LOG_ACCEPT -j LOG --log-prefix '[IPTABLES ACCEPT] : '
/sbin/iptables -A LOG_ACCEPT -j ACCEPT
 
# On refuse tout
 
/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT DROP
/sbin/iptables -P FORWARD DROP
 
# On accepte tout en local et lan
 
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT
 
/sbin/iptables -A INPUT -i eth0 -j ACCEPT
/sbin/iptables -A OUTPUT -o eth0 -j ACCEPT
 
# Autoriser les DNS pour le serveur
 
/sbin/iptables -A INPUT -i ppp0 -p tcp --sport 53 ! --syn -j ACCEPT
/sbin/iptables -A INPUT -i ppp0 -p udp --sport 53 -j ACCEPT
/sbin/iptables -A OUTPUT -o ppp0 -p tcp --dport 53 -j ACCEPT
/sbin/iptables -A OUTPUT -o ppp0 -p tcp --dport 80 -j ACCEPT
 
# Le WEB pour serveur
 
/sbin/iptables -A INPUT -i ppp0 -p tcp --sport 88 ! --syn -j ACCEPT
/sbin/iptables -A OUTPUT -o ppp0 -p tcp --dport 80 -j ACCEPT
 
# Autoriser les connexions pour le serveur IRC
 
/sbin/iptables -A OUTPUT -o ppp0 -p tcp --sport 6667 -j ACCEPT
/sbin/iptables -A INPUT -i ppp0 -p tcp --dport 6667 -j ACCEPT
 
# Autoriser les connexions pour le serveur Counter Strike
 
/sbin/iptables -A OUTPUT -o ppp0 -p udp --sport 27000:28000 -j ACCEPT
/sbin/iptables -A INPUT -i ppp0 -p udp --dport 27000:28000 -j ACCEPT
 
# Acces du lan a internet
 
/sbin/iptables -A FORWARD -i eth0 -o ppp0 -j ACCEPT
/sbin/iptables -A FORWARD -o eth0 -i ppp0 -j ACCEPT
 
# Dialoguer sur le net avec la meme adresse IP
 
/sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j MASQUERADE
 
# Tout ce qui n'a pas passer ces règles seront refusées
 
/sbin/iptables -A FORWARD -j LOG_DROP
/sbin/iptables -A INPUT -j LOG_DROP
/sbin/iptables -A OUTPUT -j LOG_DROP
 
echo "[TERMINE]"

Reply

Marsh Posté le 08-06-2002 à 11:01:35    

tu te casse trop la tete!!
creer le toi mm c plus simple
 
1=> autorise lo
2=> autorise ton reseau local
3=> test
4=> ferme tes regles
 
et cherche sur le forum y a plein de tut dessus
pour counter moua j ai mis  
 
-A INPUT -p udp -m state --state NEW -m udp --sport 1024:65535 --dport 27015 -j ACCEPT
voila
++


Message édité par nikauch le 06-08-2002 à 11:12:31

---------------
http://nikauch.dyndns.org/board/
Reply

Marsh Posté le 08-06-2002 à 11:52:14    

Qu'est-ce que tu entends par ferme tes regles ?
Tu aurais un exemple ?
Merci.

Reply

Marsh Posté le 08-06-2002 à 15:52:53    

edit: pour les regles du web, c'est le port 80 en input/output, j'ai fait une faute de frappe
 
mate mon post, j'ai edite

Reply

Marsh Posté le 08-06-2002 à 18:46:26    

ok, c bon !
 
Mais j'ai un autre probleme, lorsque par ex je veux voir des bandes annonces sur allocine, ca plante.
Et je crois avoir lut qque part qu'il fallais activer le module real player.
Est-ce bien ca ? Quel est le nom du module ?


Message édité par Kyle le 06-08-2002 à 18:46:50
Reply

Marsh Posté le 09-06-2002 à 02:33:06    

je crois pas qu'il en existe....pas dans le kernel standard en tt cas
 
si ca existe, c'est dans /lib/modules/linux-xxx/kernel/net/....

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed