panhas

Archive for August 24th, 2009

Cisco VPN από το eeebuntu…

In Linux on August 24, 2009 at 3:32 pm

Σενάριο:

Έχω κάποιες εταιρίες που τις υποστηρίζω απομακρυσμένα χρησιμοποιώντας τον VPN Client της Cisco, τον οποίο εκτελώ μέσα από το Laptop μου που διαθέτει Vista. Για λόγους ευκολίας, κάποια στιγμή αγόρασα ένα eee της Asus με προεγκατεστημένα XP Home. Αφού τα δούλεψα για λίγες μέρες, αποφάσισα να δοκιμάσω το eeebuntu NBR στο eee οπότε κατέβασα το image, το φόρτωσα σε ένα usb stick και πλέον το eee μου είχε Linux. Ωραίο περιβάλλον, πολύ χρήσιμα utilities, καλύτερος έλεγχος στο λειτουργικό και ενσωματωμένος Terminal Server Client για να συνδέομαι απομακρυσμένα σε Windows Servers για να κάνω την δουλειά μου. Αλλά υπήρχε ένα πρόβλημα: Πως θα συνδεόμουν στο VPN του Cisco Router από το Linux για να δουλέψω με Terminal Server Client;

Λύση:

Ανοίγω ένα terminal window και δημιουργώ ένα φάκελο με την εντολή: mkdir vpnclient

στη συνέχεια αλλάζω στο φάκελο με την εντολή: cd vpnclient

κατόπιν κατεβάζω το cisco decrypt από το debuntu.org με την εντολή wget: wget http://www.debuntu.org/files/cisco-decrypt.c
συνεχίζω με την εγκατάσταση και την παραμετροποίηση πληκτρολογώντας σε σειρά τις παρακάτω εντολές:

sudo apt-get install libgcrypt11-dev

gcc -Wall -o cisco-decrypt cisco-decrypt.c $(libgcrypt-config --libs --cflags)

Δίνω permissions και αντγράφω στο /usr/bin:

chmod +x cisco-decrypt

sudo cp cisco-decrypt /usr/bin

Σε αυτό το σημείο πήγα στο directory profiles του VPN Client της Cisco στο laptop με τα vista.

C:\Program Files\Cisco Systems\VPN Client\Profiles

Εκεί βρήκα όλα τα VPN Connection  profiles των εταιριών που υποστηρίζω απομακρυσμένα σε μορφή company01.pcf, company02.pcf, company03.pcf κτο…

Αντέγραψα όλα τα pcf αρχεία σε ένα usb stick και τα μετέφερα στο vpnclient directory στο eee.

Μετά, κατέβασα το pcf2vpnc ώστε να μπορέσω να κάνω convert τα pcf αρχεία σε vpnc format:

wget http://svn.unix-ag.uni-kl.de/vpnc/trunk/pcf2vpnc

Δίνω permissions και κάνω copy στο /usr/bin:

chmod +x pcf2vpnc

sudo cp pcf2vpnc /usr/bin

Στη συνέχεια κάνω convert ένα-ένα όλα τα αρχεία pcf σε conf ώστε να τα διαβάζει το vpnc:

pcf2vpnc company01.pcf > company01.conf

pcf2vpnc company02.pcf > company02.conf

pcf2vpnc company03.pcf > company03.conf

… … …

Αντιγράφω όλα τα conf στο /etc/vpnc:

sudo cp company*  /etc/vpnc/

Εγκαθιστώ το vpnc:

sudo apt-get install vpnc resolvconf

…και είμαι έτοιμος!!!

Για να συνδεθώ στο vpn πληκτρολογώ στο terminal:

sudo vpnc company01

το σύστημα θα ζητήσει πρώτα τον κωδικό πρόσβασης του root και μετά τον κωδικό του vpn που δίνω κατά την σύνδεση στο Cisco VPN Client από τα vista

Αν τα έχω κάνει όλα σωστά τότε θα παρω από το σύστημα την απάντηση:

VPNC started in background (pid: 1776)…* που σημαίνει ότι συνδέθηκα στο vpn!

*Σημείωση: Το pid θα αλλάζει κάθε φορά.

Ανοίγω πλέον τον Terminal Server Client και συνδέομαι στον Windows Server κανονικά.

Αφού τελειώσω τη δουλειά μου και κάνω logoff από τον Windows Server, αποσυνδεόμαι από το VPN με την εντολή:

sudo-vpnc disconnect

Συμπέρασμα:

Αν συνυπολογίσω και το γεγονός ότι το linux διαθέτει αναρίθμητη πληθώρα εφαρμογών και utilities για system/network administration μπορώ να πω με ασφάλεια ότι μετά από λίγο καιρό θα έχω ένα πολύ χρήσιμο επαγγελματικό εργαλείο με χαρακτηριστικά σταθερότητας, ευελιξίας, και απαράμιλλης δύναμης…

-panhas