Ne extindem reteaua sau OpenVPN pentru muritori

#tar -zxvf openvpn-2.0_rc21.tar.gz
#cd openvpn-2.0_rc21
#. / Configurare
#Ai
#Ai instalați
#Ai curat

Dacă nu este suficient ce unele pungi de ceai, sau să încerce să le specificați printr-o opțiune în ./configure pentru o construcție de succes. Pentru operarea convenabilă a configuratorului, eu folosesc de obicei, oricare două terminale sau două sesiuni Putty. Pe o cursă:

# / Configurare -help. | mai puțin

Și la celălalt umplute diferite steaguri. Astfel, instalația pare să fie sortate ... Ne întoarcem la mult mai interesant și provocator parte, și anume crearea de fișiere de configurare și tot felul de chei.

Pentru a face să funcționeze, trebuie să recompilați kernel-ul cu următoarele opțiuni:

opţiuni de IPSEC
opţiuni de IPSEC_ESP

Pentru a opera pe partea de server care avem nevoie, nu este mult. Dacă doriți să citiți în continuare Vechiul:

Dacă vrei să mergi rapid pe warpath, doar repetă după mine! Wow, deja am început să scrie în rimă! Deci, editați fișierul de configurare:

Pentru a prescrie următoarele:

# OpenVPN daemon OpenVPN cere serverul nostru de a deveni un demon, te sfătuiesc să pui această linie # numai după ce toate lucrările.

dev # Tun utiliza această interfață

server de 10.1.0.0 255.255.255.0 # ip pentru a sublinia rețea server VPN

împinge «traseu 10.1.0.0 255.255.255.0» # - această piesă se va adăuga un traseu de rețea VPN
împinge «traseu 194.1.1.0 255.255.255.0» # - acest lucru se va adăuga grilă clienții marshut pentru serverul VPN
împinge «traseu 192.168.0.0 255.255.255.0» # - aceasta este calea la rețeaua de domiciliu

-server # SLT specifica faptul că o configurație de server

dh # /etc/ssl/dh2048.pem un certificat pentru a cripta configurarea conexiunii
CA /etc/ssl/CA_cert.pem # Acest certificate de server
CertificatAcreditat /etc/ssl/certs/Cserv.pem #
cheie /etc/ssl/keys/Kserv.pem #

proto-server # tcp spune un server pentru a rula peste TCP
# Portul 5000 TCP port 5000

utilizatorului nimeni #, de sub care pornește serverul VPN (nu pune rădăcină!)
grup nimeni # Ei bine, un grup de

comp-lzo # Activați comprimarea

persistă-# Folosind tun aceeași interfață și tasta atunci când serverul este repornit
persistă-cheie

-auth /etc/ssl/ta.key SLT 0 # Protecție împotriva atacurilor DOS
Keepalive 10 120 # Durata de viață a sesiunii inactive

verb 4 # Numărul de informații de depanare (0 la 9)

Deci, totul. Pe serverul terminat. Trece la client. Despre cheile și certificatele nu vă faceți griji, le vom crea mai târziu.

Windows client OpenVPN

Știi, acest lucru poate fi folosit chiar și pe o conexiune dial-up-lea, care nu este lipsit de importanță pentru mine! Am aruncat cheile, astfel încât programul de instalare Flash-ku și nu vă faceți griji mai mult, chiar dacă vizitați o bere prietena bea și să mănânce carne, și apoi șeful ar suna și să înceapă să jure că au ceva nu funcționează, te ridica clientul de la un prieten, dar nu ghici copia cheile de la zhestak lui. copie Config și metode de a schimba cheia de client pe o unitate flash, aici. Ah, da ... Haide.

Apăsați Start-Programs-OpenVPN ... Vino la folderul cu fișiere de configurare. Creați home.ovpn și să scrie sau să copiați această configurație:

vorbesc client # client pentru a ridica informația de rutare de la server (amintiți-vă # opțiunea de împingere)

remote ip-o # în loc de ip-un server de înscriem IP reale vizibile în Internet

-client # SLT Aceasta este o configurație client

-Tip CertificatAcreditat ns server de # Aceasta este o altă apărare, de data aceasta din «omul din mijloc» atac.

ca «H: \\ config OpenVPN \\ CA_cert.pem» # Acesta este doar modul în care cheile (le-am pe o unitate flash)

CertificatAcreditat «H: \\ config OpenVPN \\ chome.pem»

Tasta «H: \\ config OpenVPN \\ khome.pem»

tls-auth «H: \\ config OpenVPN \\ ta.key» # 1 Anti-DOS. Aici, în contrast cu serverul ar trebui să # edinichka. Nu amestecați, Kutuzov! 😉

Proto-client tcp # client care rulează peste TCP
# 5000 Port conectează la un port 5000

comp-LZO # Acest lucru știi deja

Tun-MTU 1500 # Trebuie doar să copiați, dacă nu știi rețea, nu pot vorbi despre acest lucru în două rânduri #
Tun-MTU-extra 32
mssfix 1450

Astfel, configurația este pregătită. Ne întoarcem acum la o mai multe activități interesante, generarea de chei și certificate.

taxiuri OpenSSL

Stomp în / etc / ssl. Nu crea 2 fișiere: index.txt și în serie. Acum putem scrie ceva în serie:

#cd / etc / ssl
index.txt #touch
serial #touch
#echo "01"> ./serial

Acum, să creeze un cuplu de dosare:

certs #mkdir
chei #mkdir
#mkdir crl

Și acum, un pic am avea grijă de securitate și de a schimba openssl.cnf dumneavoastră. Am înțeles că aveți un nebun mâini, așa că nu uitați să faceți o copie a acestui fișier, așa că pur și simplu foc. 😉

#cp ./openssl.cnf ./ openssl.cnf.backup
#vi openssl.cnf

Parametrii «default_days», și setați-o egală cu 9125 (acest număr de zile înainte de certificatele noastre vor înceta să funcționeze). Și ca să semneze la sfârșitul config:
[Server]
basicConstraints = CA: FALSE
nsCertType = server de

După ce va crea certificate, acest lucru nu se va da în fiecare copil citind această revistă pentru a efectua un simplu «om în mijloc» atac. Dacă uitați să înregistrați această setare «-tip CertificatAcreditat ns de server» în fișierul de configurare nu va funcționa.

Un pic mai multă răbdare și să faci ce așteptat atât de mult. Ai făcut-o!

Să revenim la calea adevărului:

req #openssl -new -x509 -keyout privat / CA_key.pem -out CA_cert.pem

Introduceți parola și nu-l uita.

#openssl REQ -new -nodes -keyout chei / Kserv.pem -out req / Rserv.pem

Pentru această linie este important ca parametru Numele organizației a coincis cu faptul că aveți la generarea CA_cert.pem.

#openssl cca -extfile /etc/ssl/openssl.cnf serverul -extensions -out certs / Cserv.pem -infiles req / Rserv.pem

Vi se va cere câteva întrebări la care nu se gândesc răspuns lung «y».
A fost pentru server. Acum, se repetă toate același lucru, dar pentru client.

#openssl req chei -keyout -Noi / Khome.pem -out req / Rhome.pem
#openssl CA -out certs / Chome.pem -infiles req / Rhome.pem

Nu uita despre ta.key:

#openvpn -genkey -secret ta.key

crearea Deci, și în cele din urmă un fișier Diffie-Hellman (fig știu cum să scrie în limba rusă)

#openssl dhparam -out dh2048.pem 2048

După primirea mesajului datoriei sale la crearea, du-te pentru a bea o bere (I într-adevăr a fost creat aproape 20 de minute).

Suntem luați certificatele noastre

Puteți fie să copiați pe o dischetă:

#mkdir / mnt / floppy
#mount -t msdos / dev / fd0a / mnt / floppy
# Cp /etc/ssl/certs/Cnode.pem / mnt / floppy
#cp /etc/ssl/keys/Knode.pem / mnt / floppy
#cp /etc/ssl/CA_cert.pem / mnt / floppy
#cp etc / ssl / ta.key / mnt / floppy
#umount -f / dev / fd0a

Sau, dacă ești curajos iad, și așa fac toate linie cu linie o dată pe server, pe care îl utilizați clientul SFTP și ia totul de la servaka proprii.

Acum, rulați serverul OpenVPN:

#openvpn -config /usr/local/etc/openvpn/office.conf

Creați un mic openvpn.sh în /usr/local/etc/rc.d pentru a rula automat la pornire:

caz «$ 1» în
începe)
echo-n «OpenVPN2 de pornire ...«
/ Usr / local / sbin / OpenVPN || ieșire 1
;;
oprire)
echo -n «Se închide OpenVPN2 ...«
/ Usr / bin / killall OpenVPN # 038;> / dev / null || ieșire 1
;;
reîncărca | repornire)
$ 0 Opreste # 038; # 038; somn 1 # 038; # 038; $ 0 Început || ieșire 1
;;
*)
echo «Utilizare: $ 0"
ieșire 1
ESAC

De obicei prescris pentru ipfw, pentru a permite să se conecteze la noastre cu tine un daemon:

#ipfw -q adăuga trece de la orice tcp la mine 5000
#ipfw -q adăuga trece de la orice tcp la orice prin tun0

Doar atunci puteți adăuga la script-ul firewall-ului.

Pentru o conexiune cu clienții bazate pe Windows utilizează GUI, cum să-l înregistreze la autostart pentru comoditate, cred că și el va înțelege.

Arată acest articol unui prieten: