Déc 15 2009

Un Routeur Cisco Virtuel sur votre Réseau

Publié par sous Cisco,Linux

Dynamips et dynagen permettent de créer un routeur Cisco virtuel sur un environnement Linux. Ne serait-ce encore mieux si ce routeur était connecté au LAN local? En allant plus loin, ce même routeur pourrait être connecté à d’autres routeurs virtuels formant un lab complet.
 

Téléchargement et Installation

Télécharger dynamips et dynagen depuis sourceforge.net. Bien prendre en compte que la dernière version de Dynagen nécessite Dynamips 0.2.8-RC2.
Les 2 programmes sont livrés sous forme de paquets RPM pour Redhat/Fedora.
 
Sur d’autres distributions Linux telles que Debian ou Ubuntu, Dynagen n’est disponible que sous forme d’archive depuis laquelle on peut extraire les binaires. Il suffit ensuite de faire pointer un lien symbolique vers dynagen depuis /usr/local/bin par exemple. Quant à Dynamips, il faut l’extraire du rpm. Il peut aussi être téléchargé sur netexpertise.eu.
A noter que dynamips peut retourner une erreur comme ceci:

[root@cisco_host]$ dynamips -h
dynamips: error while loading shared libraries: libpcap.so.0.9:
cannot open shared object file: No such file or directory

[root@cisco_host]$ ln -s /usr/lib/libpcap.so.0.9.8 /usr/lib/libpcap.so.0.9

 
Un lien symbolique suffit pour pointer vers la bonne librairie.
 

Installation des Outils Réseau

Les 2 outils suivants seront nécessaires:
– brctl du package bridge-utils (sur la majorité des distributions Linux) – pour créer un bridge
– tunctl de rpmfind pour Redhat/Fedora et uml-utilities pour Debian/Ubuntu – pour créer une interface tap. Celui-ci n’est pas absolument nécessaire puisque Dynagen est capable de créer sa propre interface de lui-même mais il s’avère très utile.
 

Création du Bridge et Connexion au Réseau

Le bridge br0 se constituera de l’interface eth1 connectée au LAN et de tap0 liée au routeur Cisco. 192.168.0.100 est l’adresse de l’hôte Linux.

[root@cisco_host]$ brctl addbr br0
[root@cisco_host]$ ifconfig br0 up
[root@cisco_host]$ ifconfig eth1 0.0.0.0
[root@cisco_host]$ brctl addif br0 eth1
[root@cisco_host]$ ifconfig br0 192.168.0.100 netmask 255.255.255.0 up


Fichier de Configuration du Routeur Cisco Virtuel

Créer le fichier de configuration Dynagen suivant. Il faudra copier sa propre image Cisco sur le serveur puisqu’elle est propriétaire bien entendu. C’est là que l’on fait le lien entre l’interface f0/0 du Cisco et tap0.

[localhost]
workingdir = /tmp

    [[ 7200 ]]
    image = /root/c7200-js-mz.124-3.bin
    ram = 128
    idlepc = 0x6082c30c

    [[ router R1 ]]
    console = 2001
    f0/0 = NIO_tap:tap0

 
Je suggère de jeter un oeil sur le tutorial Dynagen pour définir la meilleure valeur de idlepc pour ne pas consommer toutes les ressources CPU de la machine. On peut ensuite lancer l’hyperviseur Dynamips ainsi que Dynagen pour exécuter le routeur virtuel.

[root@cisco_host]$ dynamips -H 7200&
[1] 2347
[root@cisco_host]$ Cisco Router Simulation Platform (version 0.2.8-RC2-x86)
Copyright (c) 2005-2007 Christophe Fillot.
Build date: Apr 20 2008 12:25:53
Hypervisor TCP control server started (port 7200).

[root@cisco_host]$ dynagen router.net
Reading configuration file...

Shutdown in progress...
Shutdown completed.
Network successfully loaded

Dynagen management console for Dynamips and Pemuwrapper 0.11.0
Copyright (c) 2005-2007 Greg Anuzelli, contributions Pavel Skovajsa

=>


Ajout du Routeur Cisco au Bridge

tap0 a été créé par Dynagen et peut maintenant être activé et ajouté au bridge.

[root@cisco_host]$ brctl addif br0 tap0
[root@cisco_host]$ ifconfig tap0 up



Connexion au Routeur

Connectez-vous au routeur en telnet sur le port 2001 – comme défini dans le fichier de configuration précédemment – et jouez avec la console comme si vous étiez sur un véritable routeur Cisco et son IOS.

[root@cisco_host]$ telnet localhost 2001
router>enable
router#show interface summary

 *: interface is up
 IHQ: pkts in input hold queue     IQD: pkts dropped from input queue
 OHQ: pkts in output hold queue    OQD: pkts dropped from output queue
 RXBS: rx rate (bits/sec)          RXPS: rx rate (pkts/sec)
 TXBS: tx rate (bits/sec)          TXPS: tx rate (pkts/sec)
 TRTL: throttle count

  Interface              IHQ   IQD  OHQ   OQD  RXBS RXPS  TXBS TXPS TRTL
------------------------------------------------------------------------
* FastEthernet0/0          0     0    0     0     0    0     0    0    0
  FastEthernet0/1          0     0    0     0     0    0     0    0    0
NOTE:No separate counters are maintained for subinterfaces
     Hence Details of subinterface are not shown

router#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
router(config)#int fa0/0
router(config-if)#ip address 192.168.0.101 255.255.255.0
router(config-if)#no shutdown
router(config-if)#end
router#

router#ping 192.168.0.1

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.1, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 8/11/16 ms
router#ping 192.168.0.100

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 192.168.0.100, timeout is 2 seconds:
.!!!!
Success rate is 80 percent (4/5), round-trip min/avg/max = 4/20/36 ms

 
192.168.0.1 étant la passerelle ou tout matériel sur le LAN.
Vous pouvez maintenant virtualiser autant de routeurs Cisco que vous le souhaitez, dans la limite des ressources de votre machine.

 

Aucune Réponse

Déc 09 2009

Carte wifi Atheros sur Linux Ubuntu

Publié par sous Linux




J’ai été surpris que la commande ifconfig ne retourne aucune interface pour ma carte wifi Netgear à base de chipset Atheros. A l’inverse de Redhat, Madwifi ne semble pas se compiler sur Ubuntu, peu importe la version utilisée. Les Kernel headers installés, j’obtiens toujours cette erreur:

/root/madwifi-0.9.4/net80211/ieee80211_power.c:
In function 'ieee80211_pwrsave':
/root/madwifi-0.9.4/net80211/ieee80211_power.c:240:
error: implicit declaration of function '__skb_append'
make[3]: *** [/root/madwifi-0.9.4/net80211/ieee80211_power.o]
Error 1
make[2]: *** [/root/madwifi-0.9.4/net80211] Error 2
make[1]: *** [_module_/root/madwifi-0.9.4] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.27-7-generic'
make: *** [modules] Error 2

Ceci serait dû aux changements apportés aux derniers noyaux. Une solution est d’installer madwifi-ng.
 
Commencer par installer svn

root@ubuntu:~# aptitude install subversion

Et suivre les instructions sur le site de madwifi-ng. La procédure y est très bien détaillée.
 
J’ai aussi noté que le wpa_supplicant était disponible sur Ubuntu mais qu’il ne supportait pas le driver madwifi. Pour cette raison, il doit également être compilé.
Ne pas oublier d’installer openssl et ses librairies:

root@ubuntu:~# aptitude install openssl libssl-dev

 
Vous pouvez suivre les instructions sur le howto WPA pour vous connecter à votre borne WPA.

 

Aucune Réponse

Oct 13 2009

Rappel de commande avec les flèches sous ksh

Publié par sous AIX,Divers,Linux,Solaris

Les flèches ne sont pas utilisées par défaut en ksh. Pour activer le rappel de commande comme en Bash, ajouter les lignes suivantes dans le fichier .profile ou .kshrc:

# Passage en mode Emacs
# Seul le mode Emacs permet l'utilisation des flèches
set -o emacs

# Remonte dans l'historique des commandes (flèche ascendante)
alias __A='^P'

# Descend dans l'historique des commandes (flèche descendante)
alias __B='^N'

# Déplacement vers la droite sur la ligne de commande (flèche droite)
alias __C='^F'

# Déplacement vers la gauche sur la ligne de commande (flèche gauche)
alias __D='^B'

 
^P, ^N, etc ne représentent qu’un seul caractère. Pour les obtenir dans vi, entrer Ctrl-V puis Ctrl-P.
 
L’auto-complétion n’est possible que pour les fichiers, pas les commandes. Elle se fait en appuyant deux fois sur la touche Echap, et la tabulation pour les systèmes les plus récents.
 

 

Aucune Réponse

Oct 04 2009

Compiler Freeradius avec le support Oracle

Publié par sous Freeradius,Oracle

Erreur de compilation?




Le client Oracle installé (11g R2 dans mon cas), Freeradius ne semble pas trouver les en-têtes Oracle.
J’obtient l’erreur suivante:

Erreur compilation Oracle/Freeradius
configure: WARNING: oracle headers not found. 
Use --with-oracle-home-dir=<path>.
configure: WARNING: silently not building rlm_sql_oracle.
configure: WARNING: FAILURE: rlm_sql_oracle requires: oci.h.

 
Spécifier le chemin à l’option –with-oracle-home-dir ne change strictement rien.
 

Installation du client Oracle

Installer la version runtime d’Oracle client pour obtenir les headers nécessaires aux applications.
Je ne m’attarde pas dessus puisque le sujet n’est pas là. Des infos sont disponibles sur Oracle.
 

Compilation de Freeradius

Je pensais m’en sortir en indiquant au compilateur le répertoire où se trouve oci.h ainsi:

CFLAGS=-I/home/oracle/app/oracle/product/11.2.0/client_1/rdbms/public

 
Mais non, j’obtiens d’autres erreurs. Il suffit de bien positionner ses variables d’environnement comme pour n’importe quel utilisateur Oracle:

ORACLE_BASE=/home/oracle/app/oracle
ORACLE_HOME=/home/oracle/app/oracle/product/11.2.0/client_1

et de lancer la compilation. Freeradius automatise la détection des librairies avec les variables Oracle.

 

Aucune Réponse

Oct 04 2009

Enregistrer les informations d’identification Windows

Publié par sous Windows

Windows propose de s’authentifier à nouveau lorsque l’utilisateur courant ne peut pas accéder à un partage sur un autre domaine ou workgroup. Il est possible d’enregistrer ces informations d’identification Windows ou « credentials » pour ne pas avoir à entrer le nom d’utilisateur et mot de passe à chaque fois que l’on accède à ce partage.
 

Par la ligne de commande

 
Address_serveur peut être remplacé par le nom d’hôte ou l’adresse IP.

C:\>net use * \\Adresse_serveur\Partage /savecred
Le mot de passe ou nom d'utilisateur n'est pas valide pour \\Adresse_serveur\Partage.

Entrez le nom d'utilisateur de 'Adresse_serveur': Domaine\Administrateur
Entrez le mot de passe de Adresse_serveur :
Le lecteur Z: est maintenant connecté à \\Adresse_serveur\Partage.

La commande s'est terminée correctement.

 
Tous les partages sur la machine distante sont désormais accessibles, pourvu que l’utilisateur y soit autorisé.

C:\>DIR \\Adresse_serveur\Autre_Partage
 Le volume dans le lecteur \\Adresse_serveur\Autre_Partage s'appelle Systeme
 Le numéro de série du volume est 7CBD-E099

 Répertoire de \\Adresse_serveur\Autre_Partage

03/08/2009  11:11              .
03/08/2009  11:11              ..
03/08/2009  11:11              Fichiers
               0 fichier(s)                0 octets
               3 Rép(s)  28 764 975 104 octets libres

 
Un volume Z: est créé automatiquement mais peut être supprimé en toute sécurité.
 

Enregistrer les ID via le Panneau de configuration

 
Stocker les mots de passe peut aussi se faire par le biais du panneau de configuration dans certaines versions de Windows:
Panneau de configuration -> Noms et mots de passe utilisateur enregistrés sur Windows Server
ou
Panneau de configuration -> Comptes Utilisateurs -> Advancé -> Gérer sur Windows XP
 

Depuis une station Unix/Linux

mount -t cifs //Adresse_serveur/Partage /point_de_montage -o cred=credential.txt

 
Le fichier credential.txt file contient les paramètres d’authentification au dossier partagé:

username=mon_utilisateur
password=mon_mot_de_passe

 
L’accès au fichier doit être restreint à son seul propriétaire vu que les données sont stockées en clair. Mettez les permissions du fichier à 700.

 

Aucune Réponse

« Précédent - Suivant »