FreeBSD VPN Server

FreeBSD VPN Server

Principale avantaje ale VPN-urilor

  • Reducerea costurilor
    Retelele private virtuale sunt mult mai ieftine decat retelele private proprietare ale companiilor. Se reduc costurile de operare a retelei (linii inchiriate, echipamente, administratori retea).
  • Integrare, simplitate
    Se simplifica topologia retelei companiei dumneavoastra. De asemenea, prin aceeasi conexiune se pot integra mai multe aplicatii: transfer de date, Voice over IP, Videoconferinte.
  • Mobilitate
    Angajatii mobili precum si partenerii de afaceri (distribuitori sau furnizori) se pot conecta la reteaua companiei intr-un mod sigur, indiferent de locul in care se afla.
  • Securitate
    Informatiile care circula prin VPN sunt protejate prin diferite tehnologii de securitate (criptare, autentificare, IPSec). Nu trebuie sa va temeti ca datele traficate prin VPN pot fi compromise.
  • Scalabilitate
    Afacerea companiei creste, deci apare o nevoie permanenta de angajati mobili si conexiuni securizate cu partenerii strategici si distribuitorii.
  • Oportunitati, comert electronic
    Veti putea implementa noi modele de business (business-to-business, business-to-consumer, electronic commerce) care pot aduce venituri suplimentare pentru companie.

In continuare va prezint modul in care vom seta un server pentru VPN ruland freeBSD.
Pentru aceasta avem nevoie de PoPToP care are ca cerinta minina FreeBSD 3.1 cu suport pentru tunele de pachete ("tun" devices). Aici vom descrie cum sa rulam PoPToP cu PPP (aka "userland ppp"), nu PPPd. Datorita acestui fapt, setarile sunt diferite de Linux. Atentie: FreeBSD PPP nu suporta criptarea datelor.

Cerinte pentru kernel:

– in cazul kernelului 3.x suportul pentru un singur tunel este inclus in kernelul "GENERIC". Daca ati recompilat kernelul fara tuneluri, sau doriti mai multe decat unul singur, trebuie sa recompilati kernelul adaugand sau modificand linia:

pseudo-device tun X

, unde X reprezinta numarul maxim de tuneluri (conexiuni simultane).
Dupa incarcarea noului kernel, trebuie sa rulati urmatoarele comenzi:

cd /dev
./MAKEDEV tun[1-X]

,unde X are aceasi semnificatie ca mai sus.

– in cazul kernelului 4.x sau mai noi, aveti nevoie doar de linia urmatoare in fisierul de configurare a kernelului, care este inclusa in mod implicit in kernelul "GENERIC":

pseudo-device tun # Packet tunnel.

Instalarea si configurarea PPTPd

Instalarea se poate face din portui sau packete.
In cazul porturilor:

cd /usr/ports/net/poptop
make
make install
make clean

Urmatorul pas este sa editati fisierul pptpd.conf care se gaseste de obicei in /usr/local/etc.
Cel folosit de mine arata in felul urmator:

option /etc/ppp/ppp.conf
# turn debugging on only if you need it
##debug
# if you have multiple addresses and only want to "listen" on one:
##listen 208.212.80.82
localip 192.168.0.234-238,192.168.0.245
remoteip 192.168.1.234-238,192.168.1.245

Configurarea PPP

/etc/ppp/ppp.conf

loop:
set timeout 0
set log phase chat connect lcp ipcp command
set device localhost:pptp
set dial
set login
# Server (local) IP address, Range for Clients, and Netmask
set ifaddr 192.168.120.1 86.105.128.85 255.255.255.255
set server /tmp/loop "" 0177

loop-in:
set timeout 0
set log phase lcp ipcp command
allow mode direct

pptp:
load loop
enable chap
disable pap
# Authenticate against /etc/passwd
##enable passwdauth
enable proxy
accept dns

# DNS Servers to assign client
set dns 82.208.139.64
# NetBIOS/WINS Servers to assign client
set nbns 192.168.0.15 192.168.0.16
set device !/etc/ppp/secure

/etc/ppp/secure

Trebuie creat fisierul /etc/ppp/secure cu liniile de mai jos si apoi trebuie facut chmod u+x pe el.

#!/bin/sh
exec /usr/sbin/ppp -direct loop-in

/etc/ppp/ppp.secret

Daca nu doriti sa utilizati passauth pentru autentificare, trebuie sa creati fisierul /etc/ppp/ppp.secret care sa contina useri si parolele corespunzatoare. De exemplu:

bogdan parola
user1 parola1
teste parolateste

Atentie ca parolele sunt scrise in clar, asa ca aveti grija ca acest fisier sa nu poate fi citit de orice utilizator din sistem.

Fisierele cu log-uri

Daca debug e activat in pptpd.conf, pptpd va scrie informatii de debug in fisierul /var/log/messages. Majoritatea informatiilor utile sunt scrise totusi de PPP in fisierul /var/log/ppp.log.

Alte observatii:

-aveti grija ca sa fie activat IP Forwarding
sysctl net.inet.ip.forwarding=1
– activati proxy arp
/etc/rc.conf
arpproxy_all="YES"
-trebuie sa porniti pptpd
/usr/local/etc/rc.d/pptpd.sh start

Articole asemanatoare:

Bogdan Turcanu

Bogdan Turcanu

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.