frame

Sveiki apsilankę!

Jei forume lankaisi pirmą kartą, kviečiame registruotis ir prisijungti prie diskusijų.

Prisijungti Registruotis

OpenVPN diegimas CentOS 6 aplinkoje

IV_RomanLIV_RomanL Interneto vizija
edited 2019 gruodžio 13 Į Kitos aplikacijos
Paprasta pamoka kaip įdiegti OpenVPN savo serveryje. Naudojama operacinė sistema: CentOS 5.x / CentOS 6.x . Reikalavimai OpenVPN yra ganėtinai maži, pakaks bet kokio VPS'o su 128-256MB RAM.

1. Iš pradžių ką turite padaryti tai patikrinti ar yra įjungtas TUN/TAP.
cat /dev/net/tun
Ir jei jums pateikė atsakymą:
cat: /dev/net/tun: File descriptor in bad state
Reiškia TUN/TAP yra įjungtas ir galite tęsti darbus. Jei tokio atsakymo nesulaukėte, kreipkitės į hosting'o teikėją su prašymu įjungti TUN/TAP palaikymą.

2. Instaliuojam reikiamus modulius:
yum install gcc make rpm-build autoconf.noarch zlib-devel pam-devel openssl-devel
3. Parsisiunčiam OpenVPN repo:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
4. Sukuriam RPM pakuotę:
rpmbuild --rebuild lzo-1.08-4.rf.src.rpm
rpm -Uvh /usr/src/redhat/RPMS/i386/lzo-*.rpm
rpm -Uvh rpmforge-release-0.5.2-2.el5.rf.i386.rpm
5. Įrašome OpenVPN:
yum install openvpn
6. Kopijuojam OpenVPN easy-rsa aplanką į /etc/openvpn/ :
cp -R /usr/share/doc/openvpn-2.1.4/easy-rsa/ /etc/openvpn/
7. Dabar sukursime sertifikatą:
cd /etc/openvpn/easy-rsa/2.0
chmod 755 *
source ./vars
./vars
./clean-all
Sukuriam CA:
./build-ca
Sukuriam rakto serverį:
./build-key-server server
Atkreipiam dėmesį:
Common Name: server
A challenge password: paliekam
Optional company name: įrašom arba enter
sign the certificate: y
1 out of 1 certificate requests: y
Sukuriam Diffie Hellman (procesas gali užtrukti):
./build-dh
8. Dabar sukursime UDP 1194 port'o konfigūracijos failą:
nano /etc/openvpn/1194.conf
Įrašom į jį duomenis pagal savo serverį:
local 123.123.123.123 #- jūsų serverio IP
port 1194 #- port
proto udp #- protocol
dev tun
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login # - dėmesio, prieš išsaugant įsitikinkite jog šis nustatymas yra vienoje eilutėje!
client-cert-not-required
username-as-common-name
server 1.2.3.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 4.2.2.1"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status 1194.log
verb 3
Išsaugom.

9. Paleidžiam OpenVPN su sukurtu konfigūracijos failu:
openvpn /etc/openvpn/1194.conf &
Taip atrodys sėkmingai veikiančio OpenVPN serverio būsena:
Mon Apr 21 02:23:20 2011 UDPv4 link remote: [undef]
Mon Apr 21 02:23:20 2011 MULTI: multi_init called, r=256 v=256
Mon Apr 21 02:23:20 2011 IFCONFIG POOL: base=1.2.3.4 size=62
Mon Apr 21 02:23:20 2011 Initialization Sequence Completed
10. Nustatom OpenVPN veikimą fone:
bg
11. Įjungiam IPv4 peradresavimą:
echo 1 > /proc/sys/net/ipv4/ip_forward
12. Nukreipiam IPtables:
iptables -t nat -A POSTROUTING -s 1.2.3.0/24 -j SNAT --to 123.123.123.123
Pastaba:

- 1.2.3.0 - IP priskirtas OpenVPN klientui
- 123.123.123.123 - jūsų serverio IP

13. Dabar sukursime vartotoją OpenVPN autorizacijai:
useradd username -s /bin/false
passwd username
Parsisiųskite ca.crt failą iš savo serverio /etc/openvpn/easy-rsa/2.0/keys/ aplanko.
Parsisiųskite OpenVPN programą skirtą Windows OS: [URL="http://OpenVPN latest-stable"]http://openvpn.net/index.php/open-source/downloads.html#latest-stable[/URL]

14. Įrašę OpenVPN programą perkelkite ca.crt failą į C:/Program Files/OpenVPN/config/

15. Sukurkite OpenVPN programai konfigūracijos failą aplanke C:/Program Files/OpenVPN/config/, pvz:
client
dev tun
proto udp #- protocol
remote 123.123.123.123 1194 #- Serverio IP ir OpenVPN port'as
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
verb 3
Išsaugom sukurtą failą pavadinimu manoopenvpn.ovpn

16. Paleidžiam OpenVPN programą ir įvedam vartotojo duomenis. Patikrinkit savo IP adresą, jis turėtų būti jūsų VPS'o.

Pastabos:

Tai yra patikrinta ir veikianti pamoka
Nurodyti konfiguracijos nustatymai yra baziniai, daugiau galite rasti OpenVPN tinklalapyje
Jei naudojate Win7 prieš įdiegdami OpenVPN programą, spustelkite dešinį pelės mygtuką ir pasirinkite "Run as administrator" ir pakeiskite suderinamumą į Windows XP SP3
Jei norite pridėti dar vieną port'ą, tuomet sukurkite kitą konfigūracijos failą VPS'e, su pakeistais duomenimis:
port: jūsų naujas port'as
protocol: tcp arba udp
client's ip: 1.2.4.0 arba 1.2.5.0 ; 1.2.6.0 ; ir t.t.
Taip pat nepamirškite naujo konfigūracijos failo OpenVPN klientui Windows OS:
proto xxxx #- Pakeiskite xxxx į tcp arba udp
remote 123.123.123.123 yyyy #- Pakeiskite yyyy į OpenVPN port'ą
Paleiskite komandinę eilutę savo VPS'e:
iptables -t nat -A POSTROUTING -s 1.2.4.0/24 -j SNAT --to 123.123.123.123
Pastaba:

- 1.2.4.0 - IP priskirtas OpenVPN klientui
- 123.123.123.123 - jūsų serverio IP
Pažymėtos temos:

Komentarai

  • s1karoliss1karolis Naujokas (-ė)
    edited 2012 kovo 10
    Būtų šaunu jei ir ant debian parašytumėte :)
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2012 kovo 10
    Sveiki, deja, pamokas ruošiame kol kas tik CentOS sistemai. Puikus gidas itin detaliai aprašantis openVPN įdiegimo procedūrą Debian sistemai pateiktas štai čia: http://goo.gl/Zj89q
  • tautwism2tautwism2 Naujokas (-ė)
    edited 2013 sausio 9
    o Jeigu piktadariai sužinos, prisijungs, pridirbs, kam grės atsakomybė?
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2013 sausio 9
    Serverio savininkui. Jūsų pareiga užtikrinti saugų serverio resursų naudojimą.
  • tautwism2tautwism2 Naujokas (-ė)
    edited 2013 sausio 9
    Taip ir maniau, net nežinau kodėl paklausiau. O imanoma padaryti prisijungimą tik vienam ip adresui?
  • IV_RomanLIV_RomanL Interneto vizija
    edited 2013 sausio 9
    Pamoka paruošta su nurodymais kaip sukurti vartotoją kuris privalės autorizuotis norint naudoti OpenVPN. Tad, jei niekam neduosite slaptažodžio viskas bus pakankamai saugu.
Norėdami palikti komentarą, turite prisijungti arba registruokis.