IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ LinuxConsultez toutes les FAQ

Nombre d'auteurs : 45, nombre de questions : 192, dernière mise à jour : 11 mai 2012 

 
OuvrirSommaireLinux en réseau

Placez les urls dans un fichier texte (nommé par exemple pg_dwd), et tapez simplement :

 
Sélectionnez
$ wget -i pg_dwd
Créé le 21 juillet 2004  par Francois Trazzi

Sur un réseau de classe C :

 
Sélectionnez
$ ping -b 192.168.0.255

L'adresse IP dépend de l'adresse de broadcast du réseau.
Si par exemple vous avez un serveur DHCP qui vous fournit automatiquement une IP, la commande :

 
Sélectionnez
$ ifconfig ethX

vous donnera l'adresse de broadcast.

Créé le 21 juillet 2004  par Francois Trazzi

Oui. Vous pouvez utiliser Lynx (présent dans la plupart des distributions), ou encore w3m.

Créé le 21 juillet 2004  par Francois Trazzi

Mettez dans un script au démarrage (par exemple : /etc/rc.local)

 
Sélectionnez

#Active le forwarding dans le kernel 
echo 1 > /proc/sys/net/ipv4/ip_forward                
# Efface les règles actuelles 
iptables -F                                           
# idem 
iptables -t nat -F                                    
# Active le routage vers ppp0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE  
Créé le 2 septembre 2005  par vic

Voici diverses méthodes pour récupérer uniquement l'adresse IP en ligne de commande, utile pour intégrer dans un script.

Si vous avez une interface Ethernet :

 
Sélectionnez
ifconfig eth0 | grep inet | cut -d":" -f2 | cut -d" " -f1

Si vous avez une interface PPP :

 
Sélectionnez

/sbin/ifconfig | grep "P-t-P" | sed "s/^[: a-z]*\([.0-9]*\).*/\1/"

Pour trouver l'adresse de la passerelle :

 
Sélectionnez

user@host:~$ awk '/eth0/{print $1}' /proc/net/arp 
192.168.0.101 

Ou bien (toujours pour la passerelle) :

 
Sélectionnez

grep $(awk '/\t0003\t/{print $1}' /proc/net/route) /proc/net/arp | cut -d ' ' -f 1 

Ou encore :

 
Sélectionnez

grep $(netstat -arn |grep UG |awk '{ print $8 }' ) /proc/net/arp |awk ' {  print $1 }'
Mis à jour le 13 décembre 2005  par Nicolas581, Chanmix, becket, Olivier Van Hoof (ovh)

Depuis la machine A, je veux une connexion rsh vers une machine B pour un user.
Entre les deux machines, il est important d'avoir le même UID pour le user.
Configurer la machine B:
Dans le répertoire home du user, créer un fichier .rhosts (700 au niveau des droits) contenant

 
Sélectionnez

machineA mon_user

Dans /etc/hosts, rajouter la machineA

 
Sélectionnez

x.x.x.x    machineA

Dans (x)inetd, décommenter ou rajouter le service rsh et rlogin

 
Sélectionnez

shell  stream tcp  nowait root   /usr/sbin/tcpd       in.rshd

Configurer la machine A:
Dans /etc/hosts, rajouter la machineB

 
Sélectionnez

y.y.y.y   machineB

Tester la connexion
Lancer une commande depuis la machine A:

 
Sélectionnez

rsh machineB "hostname"

Si le hostname de la machine B apparait, c'est bon.

Créé le 7 septembre 2005  par Sylvain Luce

Je veux connecter deux pc par le port parallèle (via un cable de type LAPLINK) et que le second pc puisse accédé à internet (dans mon exemple je suis sous debian). La gestion TCP/IP via le port parallèle est géré par le module plip :


pc1 : 192.168.1.10 est connecté à Internet sur eth0
pc2 : 192.168.1.9 n'a que le port parallèle

sur pc1 :

Si le pc1 possède un système d'impression il faut le désactiver pour pouvoir enlever le module imprimante du port parallèle. Dans mon exemple mon gestionnaire d'impression est CUPS :

 
Sélectionnez

# /etc/init.d/cupsd stop
# rmmod lp

sur pc1 : J'ajoute la gestion de TCP/IP par port parallèle :

 
Sélectionnez

# insmod /lib/module/2.6.x.x/kernel/driver/net/plip.ko

(plip dépend de parport.ko et parport_pc.ko, il faut les charger de la même manière s'il ne le sont pas déjà)

On ajoute l'interface plip0 (vérifier avec dmesg si c'est plip0 ou plip1 ou etc....)

 
Sélectionnez

ifconfig plip0 192.168.1.10 pointopoint 192.168.1.9

On va permettre la redirection pour que l'autre PC puisse se connecter à Internet :

 
Sélectionnez

# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -A POSTROUTING -t nat -o eth0 -j MASQUERADE

eth0 est l'interface qui est connecté à Internet
sur pc2 :
Je charge le module plip de la même manière que sur pc1
je définis l'interface de connection :

 
Sélectionnez

ifconfig plip0 192.168.1.9 pointopoint 192.168.1.10

Je définis PC1 comme 'routeur' :

 
Sélectionnez

route add default gw 192.168.1.10 plip0

Je copie les lignes commençant par 'nameserver' du fichier /etc/resolv.conf de pc1 dans /etc/resolv.conf de pc2 (pour les DNS, la résolution des noms)
Voilà pc2 à accès à internet et peut se connecter sur pc1.

Créé le 7 septembre 2005  par narmataru

Voici dans l'ordre la liste des opérations pour diagnostiquer. Suivant leurs succès/échec, vous pouvez ainsi en déduire votre problème.
Si vous utilisez un proxy, vérifier que votre navigateur est bien configuré pour passer par le proxy.
Pour vous assurez que c'est votre navigateur qui pose problème, essayez :

 
Sélectionnez
ping www.google.com

Si le ping est bon, alors c'est le navigateur. Sinon, afficher /etc/resolv.conf

 
Sélectionnez
more /etc/resolv.conf

Vérifier que la ligne

 
Sélectionnez
nameserver x.x.x.x

contient bien l'adresse ip du serveur DNS de votre FAI. Modifiez la ligne, le cas échéant et recommencez le ping www.google.com
Si le fichier est bien renseigné, faites un

 
Sélectionnez
ping 216.239.57.104

C'est l'adresse IP de google.
Le ping est bon, alors tout va bien, vous avez bien un accès au web. Vérifiez l'adresse dns et le fichier /etc/resolv.conf

Votre ping ne passe pas? La connexion n'est pas établie. Vérifier votre configuration ethernet, adresse ip/passerelle grâce à la commande ifconfig.
Faites un ping de votre passerelle :

 
Sélectionnez
ping x.x.x.x

Si ce ping passe bien mais le ping de 216.239.57.104 alors votre problème se trouve au niveau du routeur.

Créé le 15 septembre 2005  par Sylvain Luce

/etc/hosts contient une liste d'association nom de machine - adresse IP permettant de bypasser la résolution de nom classique (qui interroge les serveurs DNS) pour quelques serveurs dont on connaît l'adresse. Typiquement utilisé pour renseigner des noms de machines locales, plus facilement accessibles par leur nom qu'en tapant l'adresse complète. Le format du fichier est très simple :

 
Sélectionnez
127.0.0.1    localhost.localdomain    localhost
192.168.1.11    mamachine
192.168.1.12    monpc    lepc

En première colonne l'adresse de la machine, ensuite en 2e colonne (séparée par un espace ou une tabulation) le nom correspondant, suivi éventuellement par ses alias.

/etc/host.conf définit la séquence de recherche pour la résolution de nom. En général on trouve ceci :

 
Sélectionnez
order hosts,bind
multi on

Cela signifie que le résolveur commencera par chercher dans le fichier /etc/hosts, puis interrogera le DNS. Le multi on veut simplement dire que le résolveur renverra toutes les adresses qu'il trouve pour un nom inscrit dans le fichier hosts, et non seulement la première. C'est l'option par défaut sous Debian et sans d'autres distributions aussi.

Créé le 13 décembre 2005  par Olivier Van Hoof (ovh)

Le but de l'opération est que l'utilisateur A de la machine Source se connecte comme utilisateur B de la machine Destination. L'opération est un transfert de clé publique entre votre Source et votre Destination.
Sur la SourceEn tant qu'utilisateur A, vous devez générer une paire de clé RSA privée/publique :

 
Sélectionnez
ssh-keygen -t rsa -b &gt nombre de bits de la clé &lt -N ""

Je conseillerai 4096 pour la complexité de la clé.
Deux fichiers sont apparus dans ~/.ssh :

  • id_rsa
  • id_rsa.pub

id_rsa correspond à la clé privée
id_rsa.pub correspond à l'autre clé, celle publique.

Sur la DestinationLa clé publique va être recopié sur la Destination dans ~/.ssh/authorized_keys :
Vous avez un fichier dans le format suivant

 
Sélectionnez
ssh-rsa &gt la clé publique&lt A@Source

Maintenant depuis la machine Source en utilisateur A, il vous suffit de faire :

 
Sélectionnez
ssh B@Destination
Créé le 6 janvier 2008  par Sylvain Luce

Linux accepte la création d'interfaces réseaux virtuels de manière simple, il suffit de configurer une carte eth0:1.
exemple

 
Sélectionnez

/sbin/ifconfig eth0:1 192.6.1.23 broadcast 192.6.1.255 netmask 255.255.255.0

Ceci autant de fois que l'on désire d'interfaces différentes.

Créé le 4 décembre 2005  par MarcG

Outre les outils graphiques qui peuvent être inclus dans votre distribution, la désactivation et l'activation d'une interface réseau se font respectivement par les commandes ifdown et ifup, en passant en argument le nom de l'interface.

L'interface pour un modem se nomme ppp0, pour une carte réseau eth0. Ainsi, pour réinitialiser la connexion du modem, cela donne :

 
Sélectionnez
/sbin/ifdown ppp0
/sbin/ifup ppp0

Pour connaître quelles sont les interfaces réseau sur votre machine, y compris les non actives :

 
Sélectionnez
/sbin/ifconfig -a
Créé le 6 janvier 2008  par Nightfall

Avant toute chose plantons le décor : Nous avons un réseau local, un firewall, et l'internet

 
Sélectionnez
LAN <====> Firewall <====> Internet
  • On ne maitrise pas les machines du réseau local (donc on ne peut pas désinstaller skype)
  • Le firewall est déjà configuré de façon assez restrictive. Le traffic autorisé est donc très restreint (HTTP et HTTPS au moins, plus une poignée de trucs en plus comme le NTP, l'IRC, etc)
  • Comme le firewall laisse passer le HTTPS : skype passe (d'ailleurs le HTTP suffirait s'il n'y pas de filtre applicatif HTTP). Nous désirons cependant bloquer Skype du LAN vers Internet.

Après quelques recherches, j'ai noté quelques aspects du protocole Skype qui semblaient intéressants :

Au tout début du protocol, Skype tente de se connecter à un Super Noeud. Un Super Noeud c'est, en substance, un utilisateur normal qui a été élu pour tenir la fonction de super noeud en vertu de sa bande passante et de son uptime au dessus du lot. Un super noeud attend les connections sur un port préférentiel qu'il définit arbitrairement et aléatoirement, mais également sur les ports 80 et 443.
Comme les super noeuds sont des utilisateurs normaux Skype n'embarque pas de liste de super noeud "en dur" dans l'exécutable, c'est une liste dynamique et on ne peut donc bien entendu pas bloquer toutes les ip des super noeuds en dur sur le firewall. Chaque entrée de la liste est constituée d'un couple : adresse IP du super noeud, et port préférentiel du super noeud (ce port étant, je le rappelle, choisi aléatoirement par le super noeud).

Skype tente donc de se connecter de la façon suivante à un super noeud (dès qu'une connection est établie les étapes suivantes ne sont, bien entendu, pas tentées) :

  • Tentative de connection en UDP aux super noeuds sur leur port préférentiel
  • Tentative de connection en TCP aux super noeuds sur leur port préférentiel
  • Tentative de connection en TCP aux super noeuds sur le port 80 (HTTP)
  • Tentative de connection en TCP aux super noeuds sur le port 443 (HTTPS)

Généralement donc, sur un réseau firewallé, skype commence à jouer les passe muraille à partir de l'étape 3.

Une fois connecté à un super noeud le protocole de connexion continue, mais cette suite ne nous intéressera pas puisque nous allons tenter d'empécher toute connexion à un super noeud (ce qui fait abandonner à Skype la tentative de connexion et remplie donc notre cahier des charges : Skype est bloqué !)

Si vous avez bien suivi, vous avez déjà deviné comment je propose de bloquer Skype.
Le principe :Lorsque Skype tente de connecter des super noeuds en UDP sur leur port préférentiel cela se repère aisément au niveau du firewall (les ports étant "exotiques" il y a bien peu de chances qu'ils soient autorisés à sortir) et on va donc, grâce au module recent d'iptables, mémoriser les ip des super noeuds. Ensuite l'idée est simple : toujours grâce au module "recent" d'iptables on DROP tous les paquets (tcp et udp, sur tous les ports, ou au moins 80 et 443) en provenance de ces super noeuds pendant 10 minutes. De cette façon Skype ne parvient jamais à connecter un Super Noeud (puisque nous bloquons les SYN retour), et il abandonne les tentatives de connexions.

Bien entendu cette méthode a quelques "désagréments" :

  • Si, par malheur, un interlocuteur extérieur autorisé se trouve être un super noeud que quelqu'un du réseau local tente de contacter, il risque de ne plus être accessible depuis le réseau local
  • Si un individu mal intentionné sur le réseau local est au courant du fonctionnement de ce filtrage il lui est plus qu'aisé de couper toute communication entre les serveurs de son choix et le réseau local (joli DoS encore une fois, au moins pour les ports 80 et 443)

En résumé : cette méthode est utilisable pour des réseaux où la sûreté de fonctionnement n'est pas critique (tout à fait au hasard on va dire : sur le réseau local d'une résidence étudiante par exemple ^_^ ).

Maintenant place au code :

 
Sélectionnez
#!/bin/bash

#.................Début du script de firewall
#.................flush des tables principalement

#premiere regle a mettre : on drop tout ce qui vient d'une ip identifiee comme super noeud.
iptables -A FORWARD -m recent --rcheck --name skype_super_noeuds --second 600 -j LOG
iptables -A FORWARD -m recent --rcheck --name skype_super_noeuds --second 600 -j DROP

#.................suite du script de firewall,
#.................éventuel nat,
#.................tout les jumps en ACCEPT y compris sur ESTABLISHED
#.................etc

#en fin de script on memorise les ip des Super Noeuds grace a la tentative d'udp sur port bizarre
iptables -A FORWARD -p udp -m recent --name skype_super_noeuds --rdest --set
#on memorise toutes les autres tentatives bizarre, 
#en effet j'ai cru remarquer que pour certains Super Noeud skype tente directement en tcp sans passer par la case udp...
iptables -A FORWARD -p tcp -m recent --name skype_super_noeuds --rdest --set

Etant donné que Skype peut aussi passer les proxy applicatif via httpS (port 443) et ne voulant pas bloquer https, je n'ai trouvé qu'une solution qui ne m'a pas franchement satisfaite et que je n'ai d'ailleurs pas testé. A savoir : bloquer les accès https sur ip n'ayant pas de résolution DNS au niveau du proxy... d'où la solution alternative que je propose et qui se passe de proxy applicatif (plutôt gourmand en cpu)

Créé le 6 janvier 2008  par Alain Schneider
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2013 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.