FUNIX

Mettez un manchot dans votre PC




Présentation

Voilà une page un peu fourre tout sur un certain nombre de sujet en relation avec une connexion avec la livebox de wanadoo. Pour plus d'info, je vous recommande la visite du forum suivant http://livebox.forumactif.com .

Pour info, j'ai disposé pendant un mois d'une livebox sagem, qui avait plein de gros défauts rédhibitoires:
- problèmes de DNS, ça pingue en IP mais pas de résolution de nom, solution le reboot
- le port ethernet "tombait" régulièrement alors que le port wifi marchait impeccable, solution le reboot
- partage de fichiers entre PC sous wifi et PC sous ethernet chaotique, ça marche pour des petits volumes de fichiers (partage d'imprimante, NFS, SSH, ...), mais dès que le volume devient conséquent, blocage de la livebox, solution le reboot...
- configuration obscure vue l'absence de documentation, on configure en tatonnant...
Au final une fiabilité pas terrible et pas moyen de faire partager efficacement les ressources entre mon portable sous wifi et mes deux autres PC sous ethernet ce qui était franchement moyen.
Je dispose maintenant d'une livebox inventel qui je l'avour marche beaucoup mieux:
- grande stabilité (1 reboot par semaine et encore, alors qu'avec la sagem, je devais la rebooter au moins 3 fois pas jour!)
- aucun problème de partage de ressources entre wifi et ethernet
- aucun problème de DNS
Bref que du bonheur...

Pour avoir une idée de ma configuration matérielle c'est par ici.

Connexion en ethernet

Vous avez le choix d'une connexion en client DHCP pour cela brancher votre PC (on suppose sur la prise eth0) sur la prise RJ45 de la livebox (celle en rouge). Voilà le fichier /etc/sysconfig/network

HOSTNAME=mana.kervao.fr
NETWORKING=yes
GATEWAY=192.168.5.1
FORWARD_IPV4=true

(la dernière ligne permet le partage vers d'autres PC)

Et voilà le fichier /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=dhcp
NETMASK=255.255.255.0
ONBOOT=yes
MII_NOT_SUPPORTED=no
WIRELESS_ENC_KEY=""
NEEDHOSTNAME=yes

Voilà ce que ça donne maintenant lors d'une connexion réussie avec la livebox (fichier /var/log/messages)

Nov 12 15:50:51 mana ifplugd(eth0)[1361]: ifplugd 0.21b initializing.
Nov 12 15:50:51 mana ifplugd(eth0)[1361]: Using interface eth1/00:10:5A:67:4B:1D with driver <3c59x> (version: LK1.1.19)
Nov 12 15:50:51 mana ifplugd(eth0)[1361]: Using detection mode: SIOCGMIIPHY
Nov 12 15:50:51 mana ifplugd(eth0)[1361]: Initialization complete, link beat detected.
Nov 12 15:50:51 mana ifplugd(eth0)[1361]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
Nov 12 15:50:56 mana dhclient: DHCPOFFER from 192.168.5.1
Nov 12 15:50:56 mana dhclient: DHCPACK from 192.168.5.1
Nov 12 15:50:56 mana ifplugd(eth0)[1361]: client: Determining IP information for eth0... done.
Nov 12 15:50:56 mana ifplugd(eth0)[1361]: Program executed successfully.
Nov 12 15:50:56 mana network: Activation de l'interface eth0 : succeeded

La plupart du temps on se retrouve avec l'adresse 192.168.5.10 (cas d'une livebox sagem). Le fichier /etc/resolv.conf est renseigné automatiquement. N'oubliez pas que pour relancer le réseau il suffit de taper

/etc/rc.d/init.d/network restart

Dans un premier temps les serveurs DNS de la livebox étaient très capricieux, pour y remédier j'ai préféré fixer une adresse et fixer également les serveurs DNS. Voilà mon fichier
/etc/sysconfig/network-scripts/ifcfg-eth0 (le fichier network est identique) dans cette configuration

DEVICE=eth1
BOOTPROTO=static
IPADDR=192.168.5.10
NETMASK=255.255.255.0
NETWORK=192.168.5.0
BROADCAST=192.168.5.255
ONBOOT=yes
MII_NOT_SUPPORTED=no
WIRELESS_ENC_KEY=""

Voilà le fichier /etc/resolv.conf

search kervao.fr
nameserver 80.10.246.3
nameserver 80.10.246.130

A noter que maintenant je n'ai plus à souffrir de problèmes de DNS, j'ai rebasculé mes postes en DHCP.

Connexion en wifi

J'ai une carte PCMCIA NetGEAR WG511 v1 (celle compatible totalement avec prism), j'ai du installer le package wireless-tools. Par ailleurs j'ai créé le lien suivant

ln -s /mnt/windows/windows/system32/drivers/wg511dcb.arm /usr/lib/hotplug/firmware/isl3890

Le dernier fichier correspond au firmware placé sur la partition windows (on peut le trouver sur le CD d'install éventuellement). Voilà maintenant le fichier /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes
MODE=managed
ESSID=Wanadoo_9b98
CHANNEL=10
KEY=clef-dans-la-config-de-la-livebox

pour lancer l'interface réseau wifi, tapez simplement

ifup eth0

Pour voir si tout est ok, on tape

iwconfig

Voilà le résultat

lo        no wireless extensions.

eth0      IEEE 802.11b/g  ESSID:"Wanadoo_9b98"  Nickname:"tosh.kervao.fr"
          Mode:Managed  Channel:10  Access Point: 00:02:D9:31:23:01
          Bit Rate:54Mb/s   Sensitivity=20/200
          Retry min limit:8   RTS thr:2347 B   Fragment thr:2346 B
          Encryption key:3C45-2339-4A8F-BD12-854A-9D9F-AB   Security mode:restricted
          Link Quality:156/0  Signal level:-47 dBm  Noise level:-197 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

sit0      no wireless extensions.

Le fichier /etc/sysconfig/network est similaire à celui vu plus haut, le fichier /etc/resolv.conf est renseigné automatiquement, voilà ce que ça donne en cas de connexion réussi (fichier /var/log/messages).

Nov 22 20:40:52 tosh ifplugd(eth0)[1225]: Link beat detected.
Nov 22 20:40:53 tosh ifplugd(eth0)[1225]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
Nov 22 20:40:53 tosh dhclient: sit0: unknown hardware address type 776
Nov 22 20:40:54 tosh dhclient: sit0: unknown hardware address type 776
Nov 22 20:40:58 tosh dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67
Nov 22 20:41:05 tosh dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67
Nov 22 20:41:13 tosh dhclient: DHCPDISCOVER on eth0 to 255.255.255.255 port 67 interval 4
Nov 22 20:41:14 tosh dhclient: DHCPOFFER from 192.168.3.1
Nov 22 20:41:14 tosh dhclient: DHCPREQUEST on eth0 to 255.255.255.255 port 67
Nov 22 20:41:14 tosh dhclient: DHCPACK from 192.168.3.1
Nov 22 20:41:15 tosh dhclient: bound to 192.168.3.10 -- renewal in 296270 seconds.
Nov 22 20:41:15 tosh ifplugd(eth0)[1225]: client: Determining IP information for eth0... done.
Nov 22 20:41:15 tosh ifplugd(eth0)[1225]: Program executed successfully.

C'est l'adresse 192.168.3.10 qui est généralement attribuée (cas d'une livebox sagem).

Pour plus d'infos sur le sans fil, voilà quelques adresses en vrac:

En français

http://lea-linux.org/hardware/wifi.html
http://www.trustonme.net/didactels/296.html
http://linux.ensimag.fr/wifi.html

Et en anglais

http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/

Connexion avec le dongle USB Wifi

C'est par ici.

Héberger un serveur web "at home"

Il existe un certain nombre de sites qui proposent de vous fournir un nom de domaine qui est redirigé sur votre PC perso que vous ayez une adresse statique ou dynamique. L'un des plus connus (et efficaces) et www.dyndns.org.
Cliquez sur Sign Up Now, saisissez les informations qui vous sont demandées, un mail de confirmation vous est envoyé. Une fois votre compte activé, loguez vous et choisissez dynamic DNS dans la liste des services.
Puis Add a host, les options Enable Wildcard, Mail Exchanger, Backup MX peuvent rester inchangés. C'est fait vous avez créé votre domaine, maintenant vous devez configurer votre serveur Apache avec des hôtes virtuels qui vont pointer vers vos domaines. Exemple avec mes deux domaines chez dyndns, voilà la fin du fichier httpd.conf

# mon adresse IP sur internet
NameVirtualHost 192.168.5.10

# définition de mes hôtes virtuels
<VirtualHost 192.168.5.10>
ServerName funix.homelinux.org
DocumentRoot /www/homepage/online-local
ErrorLog logs/online-error_log
TransferLog logs/online-access_log
CustomLog logs/online-access_log combined
</VirtualHost>

<VirtualHost 192.168.5.10>
ServerName ohoarau.homelinux.org
DocumentRoot /www/homepage/ohoarau-local
ErrorLog logs/ohoarau-errror_log
TransferLog logs/ohoarau-access_log
CustomLog logs/ohoarau-access_log combined
</VirtualHost>

Notez bien qu'on met l'adresse IP attribuée par la livebox (c'est une bonne raison de fixer l'adresse IP plutôt que d'être client DHCP). J'ai rajouté dans le fichier /etc/hosts

192.168.5.10 ohoarau.homelinux.org funix.homelinux.org

Pour pouvoir joindre localement mes sites.

Relancer Apache, maintenant sur la livebox ouvrez le port 80 et redirigez vers l'adresse 192.168.5.10. et normalement vos sites virtuels sont accessibles depuis internet.
Pour encore plus de sécurité vous pouvez spécifier un port particulier non standard et configurer la redirection sur la livebox.

Ze problème est que vous ne gardez pas éternellement la même adresse IP, à la prochaine reconnexion vous aurez peut être une autre adresse IP (sauf si vous avez une adresse IP statique bien entendu).
Dans le cas d'une livebox inventel, pas de problème elle gère cela automatiquement, il n'y a qu'à la configurer pour. Par contre pour une livebox sagem il faut donc pouvoir prévenir DynDNS chaque reconnexion.


Dans le cas de la livebox sagem et uniquement, tout d'abord sur le site checkip.sourceforge.net  on récupèrera ipcheck.py qu'on placera sous /usr/local/adsl. Ce script python sert à indiquer à dyndns qu'on a changé d'adresse IP pour qu'il remette à jour ses bases de données (serveurs de noms).

Pour résumer à chaque reconnexion il faudra:
- trouver la nouvelle adresse IP
- indiquer à dyndns que vos serveurs ont changé d'adresse IP

C'est très simple, voilà un petit script /usr/local/sbin/reconnexion (droit en exécution 755)

#!/bin/sh
# script pour gérer les reconnexions automatiques

# Check IPs from ifconfig
getip() {
        IP=`wget --http-user=admin --http-passwd=motpasseenclair http://192.168.5.1/wansetup.html -O - -o /dev/null | grep "var Adrs_IP" | cut -d" " -f4 | cut -c2- | awk ' { gsub(/\";/,"");print}'`
        echo "Nouvelle adresse IP "
        echo $IP
}

# fonction pour relancer Apache
updateIP() {
    getip
    LOG=/var/log/adsl
    date >> $LOG
    echo starting updateIP >> $LOG
    echo -n "new IP: " >> $LOG
    echo $IP >> $LOG
    # les deux fonctions suivantes permettent d'indiquer à dyndns le changement d'adresse IP
    python /usr/local/adsl/ipcheck.py -a $IP -d /usr/local/adsl comptedyndns motpasseclair funix.homelinux.org,ohoarau.homelinux.org
}

updateIP

J'ai maintenant un script /usr/local/sbin/testconnexion (droit en exécution 755) qui est appelé toutes les 5min qui a cette tête là

#!/bin/bash
if ! ping -c 1 www.google.fr > /dev/null 2>&1
then
  (echo -n Date ; date) >> /var/log/reconnexion.log
  /usr/local/sbin/reconnexion
fi

Voilà la ligne correspondante du fichier /etc/crontab pour un appel tous les 5min

*/5 * * * * root /usr/local/sbin/testconnexion 2>&1

Tester sa connexion

Tests de sécurité

Voilà quelques sites pour tester votre firewall, je vous conseille de tous les tester, car ils opérent tous de manière différente, en essayant de scruter un maximum de port et pas seulement les ports les plus classiques.

http://www.pcflank.com/test.htm
http://grc.com/default.htm (cliquez sur le lien ShieldUp!)
http://check.sdv.fr
http://www.auditmypc.com/freescan/prefcan.asp

http://www.zebulon.fr/outils/scanports/test-securite.php
http://scan.sygatetech.com/ (très bien pour détecter précisément les services qui tournent sur votre machine (nom et version du daemon par exemple))

Mais le meilleur des tests est de trouver un pote sur internet qui veut bien vous scanner avec nmap ou nessus (page auditer sa sécurité).


Tests de vitesse

Voici quelques sites pour tester votre vitesse connexion.

Celui-là d'abord qui vous permet de connaître le débit montant et descendant
http://www.60millions-mag.com/page/bases.12_services_plus_60.1_le_testeur
http://www2.tsr.ch/bandtest/test.php
http://www.ixus.net/modules.php?name=speed

Un site qui recense 100 autres pour estimer sa vitesse de connexion !
http://www.libellules.ch/100speedtest.php
Et également http://grenouille.com/
 
[Retour page d'accueil FUNIX]