Μια από τις ενδιαφέρουσες δυνατότητες των Zyxel P661/662(H/HW) είναι αυτή της δημιουργίας VPN. Τα πράγματα είναι εύκολα όταν πρόκειται για VPN μεταξύ δύο συσκευών Zyxel ή με χρήση κάποιου Windows client, όπως ο ενσωματωμένος του εν λόγω λειτουργικού ή αυτός που δίνει η ίδια η Zyxel (που στην ουσία πρόκειται για το γνωστό client της Greenbow). Τι γίνεται όμως στην περίπτωση που χρησιμοποιούμε Linux και έχουμε δυναμικές IPs, τόσο από τη μεριά της συσκευής, όσο και από τη μεριά του VPN client; Η λύση έρχεται από το εξαιρετικό kvpnc (KDE frontend για διάφορους vpn clients) και το strongswan, το οποίο είναι μια open source υλοποίηση του πρωτοκόλλου IPSec για το Linux. Πριν ξεκινήσουμε να σημειώσουμε ότι οι παρακάτω οδηγίες δοκιμάστηκαν σε Ubuntu 8.04 x64. Πάμε λοιπόν.
[BREAK=Ρύθμιση του ρούτερ --> i. Dynamic DNS Setup]
Εφ' όσον μιλάμε για δυναμικές IPs, το σημαντικότερο είναι να φτιάξουμε ένα λογαριασμό στο dyndns.org και να κάνουμε τις απαραίτητες ρυθμίσεις γι' αυτόν στο ρούτερ μας. Από το web interface πάμε στο Advanced->Dynamic DNS και συμπληρώνουμε τα στοιχεία του λογαριασμού που δημιουργήσαμε στο dyndns.org.
[BREAK=ii. VPN Setup]
Πάλι από το web interface του Zyxel μας, πηγαίνουμε στο Security->VPN και πατάμε το εικονίδιο edit για να σετάρουμε τον VPN rule. Οι ρυθμίσεις που πρέπει να κάνουμε φαίνονται στην παρακάτω εικόνα.
Εδώ σημαντικά πεδία είναι το Local, όπου δηλώνουμε το τοπικό μας δίκτυο με την επιλογή subnet (192.168.1.0/255.255.255.0), καθώς και το Peer ID Type, όπου δηλώνουμε πως ο client θα αναγνωρίζεται με την IP του (192.168.1.100). Φυσικά δεν ξεχνάμε να δηλώσουμε το όνομα (Name) του VPN μας (myvpn) και το Pre-Shared Key (το "password" για να μπαίνουμε στο VPN).
Σημείωση: Οι τιμές myvpn, 192.168.1.100 και 1234 είναι ενδεικτικές.
Τέλος πατάμε το κουμπί Advanced και κάνουμε τις ρυθμίσεις όπως φαίνονται στην παρακάτω εικόνα.
Πατάμε το κουμπί Apply και πάλι Apply. Αυτό ήταν! Μόλις ρυθμίσαμε το VPN μας από την πλευρά του ρούτερ.
[BREAK=Ρύθμιση του kvpnc --> i. Εγκατάσταση απαραίτητου λογισμικού]
Πρώτο βήμα είναι η εγκατάσταση των kvpnc και strongswan. Από κονσόλα δίνουμε:
Ειδικά όμως για το kvpnc είναι καλύτερο να εγκαταστήσουμε την τελευταία έκδοσή του, την οποία κατεβάζουμε από εδώ: http://home.gna.org/kvpnc/en/download.htmlΚώδικας:sudo apt-get install kvpnc strongswan
Επιλέγουμε το πακέτο για τη διανομή μας και εγκαθιστούμε. Για Ubuntu 8.04 x64 το πακέτο είναι το kvpnc_0.9.1_hardy-1_amd64.deb Εγκαθιστούμε δίνοντας από κονσόλα:
[BREAK=ii. Δημιουργία νέου προφίλ]Κώδικας:sudo dpkg -i kvpnc_0.9.1_hardy-1_amd64.deb
Τρέχουμε τώρα το kvpnc. Φτιάχνουμε νέο προφίλ (Profile->New Profile). Στo παράθυρο Type selection επιλέγουμε IPSec (FreeS/WAN/Openswan/strongSwan) και πατάμε Next.
Στο παράθυρο IPSec selection επιλέγουμε Enter data manually και πατάμε Next.
Στο παράθυρο Authentication settings επιλέγουμε Pre-shared key (shared secret), πατάμε Next, επιλέγουμε Save PSK και βάζουμε το Pre-shared key που είχαμε δηλώσει νωρίτερα στο ρούτερ (1234).
Στη συνέχεια πατάμε συνεχώς Next μέχρι να φτάσουμε στο τελευταίο παράθυρο General settings (περισσότερες/λεπτομερέστερες ρυθμίσεις θα κάνουμε αργότερα). Εκεί δίνουμε ένα όνομα στο προφίλ που δημιουργούμε (Profile name), αν θέλουμε κάποια περιγραφή (Description) και τη διεύθυνση της VPN πύλης μας (VPN gateway, είναι ο host που δηλώσαμε στο dyndns.org και ρυθμίσαμε προηγουμένως στο ρουτερ).
Πατάμε Next και Finish. Μόλις δημιουργήσαμε ένα νέο προφίλ. Δεν τελειώσαμε όμως! Πρέπει να κάνουμε κάποιες επιπλέον ρυθμίσεις!
[BREAK=iii. Ρυθμίσεις πιστοποίησης]
Από το μενού του kvpnc πάμε στο Settings->Configure Kvpnc για περισσότερες ρυθμίσεις. Πρώτα πάμε στην καρτέλα Authenticate->Certificate, τσεκάρουμε το Use special remote ID και συμπληρώνουμε το όνομα του VPN που δώσαμε νωρίτερα στο ρούτερ (myvpn).
Στην καρτέλα Authenticate->PSK επιβεβαιώνουμε πως το Use special remote ID είναι επιλεγμένο και επίσης πως είναι συμπληρωμένο το όνομα του VPN μας, όπως το δώσαμε στο ρούτερ και στην προηγούμενη καρτέλα.
[BREAK=iv. Ρυθμίσεις δικτύου]
Πάμε στην καρτέλα Network->General. Στο Network Device επιλέγουμε την κάρτα δικτύου μας (πχ eth0). Τσεκάρουμε την επιλογή Use remote network και συμπληρώνουμε την τιμή 192.168.1.0 (με subnet mask 24)
Στη συνέχεια πάμε στην καρτέλα Network->Routes και επιλέγουμε το Keep default route.
Συνεχίζουμε με την καρτέλα Network->NAT και σιγουρευόμαστε ότι είναι επιλεγμένο το Use UDP (NAT-T).
Τέλος στην καρτέλα Network->Virtual IP τσεκάρουμε την επιλογή Use Virtual IP addresses. Στο πεδίο Local IP (Virtual) συμπληρώνουμε 192.168.1.100 (ή όπως είχαμε ρυθμίσει στο ρουτερ το Peer ID Type) και στο Remote IP (Virtual) 192.168.1.0/24.
[BREAK=v. Ρυθμίσεις stronswan]
Πάμε στην καρτέλα Connection specific->Openswan/strongSwan και τσεκάρουμε τις επιλογές Specify IKE/aes128-sha1, Specify ESP /aes128-sha1, Enable Perfect forward secrecy (PFS) και Disable opportunistic encryption. Στο πεδίο Local identifier επιλέγουμε ως ID type το address και συμπληρώνουμε ως ID value το 192.168.1.100 (ή όπως είχαμε ρυθμίσει στο ρουτερ το Peer ID Type). Τέλος ελέγχουμε ότι στα IPSec VPN mode και Exchange mode είναι επιλεγμένα τα tunnel και main αντίστοιχα.
Πατάμε ΟΚ! Επιτέλους είμαστε έτοιμοι να συνδεθούμε στο VPN μας!
[BREAK=Τελευταία σχόλια]
Κάποιος μπορεί να ρωτήσει "γιατί strongswan και όχι openswan;" Καταρχάς γιατί αυτό μου δούλεψε! Κατά δεύτερον και τα δύο είναι fork του FreeS/WAN, το οποίο όμως εδώ και χρόνια έχει σταματήσει να αναπτύσσεται. Συνεπώς είναι παρόμοια, αλλά με κάπως διαφορετικές δυνατότητες το ένα από το άλλο. Πάντως με μια γρήγορη ματιά, φαίνεται πως το strongswan αναπτύσσεται πιο γρήγορα και ίσως υποστηρίζει κάπως περισσότερα χαρακτηριστικά του IPSec σε σχέση με το openswan.
Επίσης υπάρχει και το racoon. Προσωπικά, στο Kubuntu μου δε μου δούλεψε καθόλου! Επίσης είδα πως κατά καιρούς είχε προβλήματα ασφαλείας, τα οποία ελπίζω να έχουν διορθώσει...
Τέλος, να αναφέρω ότι οι παραπάνω ρυθμίσεις εφαρμόστηκαν με 100% επιτυχία μετά από δοκιμές με dial-up σύνδεση, καθώς και από τη DSL γραμμή φίλου...
[BREAK=Βιβλιογραφία]
- HowTo : Πως ενώνουμε δύο κτίρια με δυο ADSL συνδρομές και VPN
- Virtual private network (from Wikipedia)
- How Virtual Private Networks Work (from HowStuffWorks)
- strongSwan homepage
- Openswan homepage
- IPsec tools homepage
- kvpnc homepage
- ZyXEL P661HW user guide
- ZyXEL support notes για τα P661/662
- OpenVPN: Εναλλακτική software based λύση για υλοποίηση VPN
Εμφάνιση 1-3 από 3
-
30-12-08, 20:07 How to: VPN με ZyXEL P661/662(H/HW), kvpnc/strongSwan και δυναμικές IPs #1
Τελευταία επεξεργασία από το μέλος megahead13 : 31-12-08 στις 00:26.
Όταν ενώνουμε τις δυνάμεις μας, μπορούμε να πετύχουμε το ακατόρθωτο - Παναγιώτης Γιαννάκης
Never say never, because limits, like fears, are often just an illusion - Michael Jordan
-
30-12-08, 20:16 Απάντηση: How to: VPN με ZyXEL P661/662(H/HW), kvpnc/strongSwan και δυναμικές IPs #2
Το πρώτο μου άρθρο στο adslgr.com! Παρακαλώ σχολιάστε και ενημερώστε με για τυχόν λάθη (ορθογραφικά ή άλλα). Επίσης αν δοκιμάσετε τα παραπάνω, πείτε αν σας δούλεψαν!
Όταν ενώνουμε τις δυνάμεις μας, μπορούμε να πετύχουμε το ακατόρθωτο - Παναγιώτης Γιαννάκης
Never say never, because limits, like fears, are often just an illusion - Michael Jordan
-
09-01-09, 19:02 Απάντηση: How to: VPN με ZyXEL P661/662(H/HW), kvpnc/strongSwan και δυναμικές IPs #3
Κάποιες παρατηρήσεις:
1. Σύμφωνα με τις οδηγίες της Zyxel το σωστό είναι να δηλώνουμε IP για τον client σε διαφορετικό subnet από αυτό του ρούτερ, πχ 192.168.2.1. Πάντως εμένα με την ενδεικτική τιμή που έχω βάλει στο άρθρο (192.168.1.100) δουλεύει μια χαρά το VPN tunnel.
2. Με ενεργοποιημένο το firewall, ενώ ο client πάει να συνδεθεί, ο ρούτερ τον "κόβει". Από τα logs είδα ότι το firewall απορρίπτει κάποια ping που κάνει ο client, παρ' όλο που από το web interface του πρώτου τα επιτρέπω. Η λύση είναι να επιτρέπονται τα ICMP πακέτα με rule από το firewall. Ίσως όχι ότι καλύτερο από θέμα ασφάλειας, αλλά μόνο με αυτό τον τρόπο μου δούλεψε σωστά το VPN μου με ενεργοποημένο το firewall του Zyxel...
3. Ένα ακόμα link για το θέμα: ftp://ftp.fastnet.ch/pub/router/p652...w_freeswan.htmΌταν ενώνουμε τις δυνάμεις μας, μπορούμε να πετύχουμε το ακατόρθωτο - Παναγιώτης Γιαννάκης
Never say never, because limits, like fears, are often just an illusion - Michael Jordan
Παρόμοια Θέματα
-
zyxel 662-61
Από kornilios στο φόρουμ Zyxel ADSL modems και routersΜηνύματα: 1Τελευταίο Μήνυμα: 14-09-07, 08:36 -
Zyxel-P661 DH3, Restarts
Από eski στο φόρουμ Zyxel ADSL modems και routersΜηνύματα: 2Τελευταίο Μήνυμα: 04-08-07, 20:46 -
How To: Zyxel 652R σε δίκτυο με static και internal IPs
Από erebus στο φόρουμ Zyxel ADSL modems και routersΜηνύματα: 24Τελευταίο Μήνυμα: 17-10-06, 15:07 -
Cisco 876-K9 ή zyxel p661-H-63
Από nasos00 στο φόρουμ Voice over IP (VoIP) Sip/Iax HardwareΜηνύματα: 2Τελευταίο Μήνυμα: 11-05-06, 12:55 -
Zyxel R-13 Πρόβλημα συνδιασμού static και dynamic ips
Από kosdian στο φόρουμ Zyxel ADSL modems και routersΜηνύματα: 2Τελευταίο Μήνυμα: 29-03-05, 01:50
Bookmarks