Nú á dögum verður VPN tækni vinsælli. Venjulegir notendur nota VPN til að fá öruggan aðgang að internetinu. Það hjálpar einnig að komast um staðbundnar lokaðar vefsíður og þjónustur og vernda gegn hugsanlegri illgjarnri hegðun utanaðkomandi. Þegar þú ert að tengjast VPN netþjóni eru örugg göng á milli tölvunnar þinnar og netþjónsins sem ekki er hægt að nálgast utan frá, þannig að VPN netþjónninn verður netaðgangsstaðurinn þinn. Það er fullt af VPN þjónustu þarna úti, bæði ókeypis og greidd, en ef hún virkar ekki fyrir þig af einhverjum ástæðum geturðu alltaf stillt þinn eigin VPN netþjón.
Til að keyra þitt eigið VPN ættir þú að leigja VPS netþjón . Það er til mismunandi hugbúnaður sem gerir þér kleift að búa til VPN tengingu. Þeir eru ólíkir hver öðrum hvað varðar stýrikerfi sem eru studd og reiknirit sem notuð eru. Við munum skoða tvær óháðar aðferðir til að setja upp VPN netþjón. Sú fyrri byggir á PPTP samskiptareglum sem eru þegar taldar úreltar og ekki öruggar en eru mjög auðveldar í uppsetningu. Hin notar nútímalegan og öruggan hugbúnað, OpenVPN, en krefst uppsetningar á forriti frá þriðja aðila og ítarlegra uppsetningarferlis.
Í prófunarumhverfinu okkar ætlum við að nota sýndarþjón sem knúinn er af Ubuntu Server 18.04. Slökkt verður á eldvegg á þjóninum vegna þess að uppsetning hans verðskuldar sérstaka grein. Við munum lýsa uppsetningarferlinu á Windows 10.
Undirbúningur
Sama hvaða VPN netþjónn þú velur, internetaðgangurinn verður settur upp með samþættum hætti stýrikerfisins. Til að opna netaðgang í gegnum ytra þjónustuviðmót þarftu að leyfa framsendingu pakka á milli viðmótanna og stilla þýðingu netfanga.
Til að kveikja á pakkaframsendingu skaltu opna skrána „/etc/sysctl.conf“ og breyta gildi breytunnar „net.ipv4.ip_forward“ í 1.
Til að beita breytingum án þess að endurræsa tölvuna skaltu keyra skipunina
sudo sysctl -p /etc/sysctl.conf
Þýðing netfanga er stillt með iptables . Fyrst skaltu athuga nafnið á ytra netviðmótinu þínu með því að keyra skipunina „ip link show“ - þú þarft hana í næsta skrefi. Nafnið okkar er „ens3“.
Virkjaðu þýðingu netfanga á ytra viðmóti þínu fyrir alla staðbundna nethnúta.
sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
Athugaðu að þú þarft að tilgreina raunverulegt nafn á viðmóti netþjónsins þíns, það getur verið annað en okkar.
Sjálfgefið er að allar reglur sem iptables býr til séu endurstilltar eftir að netþjónninn endurræsist. Til að koma í veg fyrir það skal nota „iptables-persistent“ gagnsemina. Setjið upp eftirfarandi pakka:
sudo apt install iptables-persistent
Á einhverjum tímapunkti í uppsetningarferlinu muntu sjá stillingarglugga sem mun leggja til að þú vistir núverandi iptables reglur. Þar sem reglurnar eru þegar skilgreindar skaltu bara staðfesta og smella tvisvar á „Já“ . Þar sem nú verða reglurnar sjálfkrafa notaðar eftir að þjónninn endurræsist.
PPTP netþjónn
Server stillingar
Settu upp pakkann:
sudo apt install pptpd
Eftir að uppsetningunni lýkur skaltu opna skrána „/etc/pptpd.conf“ í hvaða textaritli sem er og breyta henni svona:
option /etc/ppp/pptpd-options #path to the settings file
logwtmp #client connections logging mechanism
connections 100 #number of simultaneous connections
localip 172.16.0.1 #the address that will serve as a client gateway
remoteip 172.16.0.2-200 #range of addresses
Eftir það skaltu breyta skránni „/etc/ppp/pptpd-options“ . Flestar færibreytur eru sjálfgefnar.
#name of the service for new client records
name pptpd
#restrict obsolete authentication methods
refuse-pap
refuse-chap
refuse-mschap
#allow a more secure authentication method
require-mschap-v2
#enable encryption
require-mppe-128
#specify dns servers for clients (use any available servers)
ms-dns 8.8.8.8
ms-dns 8.8.4.4
proxyarp
nodefaultroute
lock
nobsdcomp
novj
novjccomp
nologfd
Í næsta skrefi þarftu að búa til færslu fyrir tengingar við viðskiptavini. Segjum sem svo að þú viljir bæta við notandanum „vpnuser“ með lykilorðinu „1“ og leyfa virka netfangaskiptingu fyrir hann. Opnaðu skrána „/etc/ppp/chap-secrets“ og bættu við eftirfarandi línu með færibreytum notandans í lok skráarinnar:
vpnuser pptpd 1 *
Gildið „pptpd“ er nafn þjónustunnar sem við tilgreindum í skránni „pptpd-options“ . Í staðinn fyrir „*“ er hægt að tilgreina fasta IP-tölu. Í niðurstöðunni ætti skráin „chap-secrets“ að líta svona út:
Til að virkja stillingarnar skaltu endurstilla pptpd þjónustuna og bæta henni við sjálfvirka hleðslu.
sudo systemctl restart pptpd
sudo systemctl enable pptpd
Uppsetningu miðlara er lokið.
Uppsetning viðskiptavinar
Opnaðu „Start“ - „Stillingar“ - „Net og internet“ - „VPN“ og smelltu á „Bæta við VPN-tengingu“.
Sláðu inn tengibreyturnar í glugganum sem opnast og smelltu á „Vista“.
- VPN veitandi: „Windows (innbyggt)“
- Nafn tengingar: „vpn_connect“ (þú getur valið hvaða nafn sem er)
- Nafn eða heimilisfang netþjóns: (tilgreindu ytri IP tölu netþjónsins)
- VPN tegund: „Sjálfvirk“
- Tegund innskráningarupplýsinga: „Notendanafn og lykilorð“
- Notandanafn: vpnotandi (nafn tilgreint í „chap-secrets“ skránni á þjóninum)
- Lykilorð: 1 (eins og í „chap-secrets“ skránni)
Eftir að þú hefur vistað stillingarnar sérðu nýju VPN tenginguna í glugganum. Smelltu með vinstri músarhnappinum á tenginguna og veldu „Tengjast“ . Ef tengingin tekst sérðu stöðuna „Tengt“ .
Í valkostunum finnur þú innri vistföng viðskiptavinarins og netþjónsins. Reiturinn „Áfangastaður“ sýnir vistfang ytri netþjónsins.
Þegar tenging er til staðar verður innri IP-tala netþjónsins, 172.16.0.1 í okkar tilviki, sjálfgefin gátt fyrir öll útsend pakka.
Með því að nota hvaða netþjónustu sem er geturðu gengið úr skugga um að ytri IP vistfang tölvunnar sé nú það sama og IP vistfang VPN netþjónsins þíns.
OpenVPN netþjónn
Server stillingar
Við skulum kynna heimildastig núverandi notanda vegna þess að fyrir frekari stillingar okkar þurfum við rótaraðgang.
sudo -s
Settu upp öll nauðsynleg pakka. Við þurfum „Easy-RSA“ pakkann til að stjórna dulkóðunarlyklum.
apt install openvpn easy-rsa iptables-persistent
Leyfa innkomandi tengingar á porti 1194 í gegnum UDP samskiptareglur og beita iptables reglum.
sudo iptables -I INPUT -p udp --dport 1194 -j ACCEPT
sudo netfilter-persistent save
Búðu til möppu með afritaðum skrám úr „Easy-RSA“ pakkanum og farðu í hana.
make-cadir ~/openvpn
cd ~/openvpn
Búa til innviði fyrir opinbera lykla (PKI).
./easyrsa init-pki
Búðu til rótarvottorð vottunarstöðvarinnar (CA).
./easyrsa build-ca
Á meðan lykilorðið er búið til verður þú beðinn um að setja upp og muna lykilorð. Þú þarft einnig að svara spurningum og slá inn upplýsingar um eiganda lykilsins. Þú getur látið sjálfgefin gildi vera í hornklofa. Ýttu á „Enter“ til að ljúka innsláttinum.
Búa til einkalykil og beiðni um vottorð. Sem rök skaltu tilgreina handahófskenndan nafn; í okkar tilviki er það „vpn-server“.
./easyrsa gen-req vpn-server nopass
Láttu Common Name vera sjálfgefið gildi.
Undirritaðu beiðnina um netþjónsvottorð sem myndaðist.
./easyrsa sign-req server vpn-server
Í þessu skrefi skaltu svara „já“ til að staðfesta undirskriftina og slá síðan inn lykilorðið sem var búið til við myndun rótarvottorðsins.
Búa til Diffie-Hellman breytur. Þessar breytur eru notaðar fyrir örugga lyklaskipti milli netþjónsins og biðlarans.
./easyrsa gen-dh
Allar nauðsynlegar skrár hafa verið búnar til. Við skulum búa til „keys“ möppu í OpenVPN vinnumöppunni til að geyma lyklana og afrita þær skrár sem búnar voru til þangað.
mkdir /etc/openvpn/keys
sudo cp pki/ca.crt pki/issued/vpn-server.crt pki/private/vpn-server.key pki/dh.pem /etc/openvpn/keys
Stilla NAT með því að nota iptables reglur. Búðu til skrá sem heitir nat og opna það til breytinga í /etc/openvpn/ skrá.
#!/bin/sh
# Reset firewall settings
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT
# Allow OpenVPN connections (eth0 in our case, may vary)
iptables -A INPUT -i eth0 -p udp --dport 1194 -j ACCEPT
iptables -A INPUT -i tun0 -j ACCEPT
# (eth0 in our case, may vary):
iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT
iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
# (eth0 in our case, may vary)
iptables -A FORWARD -i eth0 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Enable masquerading for the local network (eth0 in our case, may vary)
iptables -t nat -A POSTROUTING -o eth0 -s 10.8.0.0/24 -j MASQUERADE
# Deny incoming connections from outside
iptables -A INPUT -i eth0 -j DROP
# Deny transit traffic from outside (eth0 in our case, may vary)
iptables -A FORWARD -i eth0 -o tun0 -j DROP
sudo netfilter-persistent save
Vistaðu skrána og gerðu hana keyranlega.
sudo chmod 755 /etc/openvpn/nat
Afritaðu sniðmátið fyrir stillingar netþjónsins.
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/
Opnaðu skrána „/etc/openvpn/server.conf“ til að breyta henni, vertu viss um að hún innihaldi eftirfarandi línur og breyttu þeim ef þörf krefur:
#Port, protocol, and interface
port 1194
proto udp
dev tun
#Path to the encryption keys
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/vpn-server.crt
key /etc/openvpn/keys/vpn-server.key
dh /etc/openvpn/keys/dh.pem
#SHA256 Hashing Algorithm
auth SHA256
#Switching off additional encryption
#tls-auth ta.key 0
#Network parameters
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist /var/log/openvpn/ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
#Ping every 10 seconds to check the connection.
keepalive 10 120
#Set up AES-256 encryption for the tunnel.
cipher AES-256-GCM
#Demoting the service OpenVPN after launch
user nobody
group nogroup
#Switching on parameters saving after reboot
persist-key
persist-tun
#Set log verbosity
verb 3
#Redirecting logs
log-append /var/log/openvpn/openvpn.log
#Script the rule installation launch.
up /etc/openvpn/nat
Virkja áframsendingu umferðar á netþjóninum.
sudo sysctl -w net.ipv4.ip_forward=1
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
Ræstu OpenVPN til að virkja stillingarnar.
systemctl restart openvpn@server
Uppsetningu miðlarans er lokið!
Uppsetning viðskiptavinar
Farðu á opinberu vefsíðu OpenVPN „ https://openvpn.net “ og farðu í hlutann „SAMFÉLAG“.
Skrunaðu niður og sæktu uppsetningarforritið fyrir þína útgáfu af stýrikerfinu. Í okkar tilviki er það Windows 11 ARM64.
Settu upp forritið og skildu eftir sjálfgefið allar breytur.
Á næsta stigi þarftu að undirbúa eftirfarandi skrá á þjóninum og flytja þær yfir á biðlaratölvuna:
- opinberir og einkalyklar;
- afrit af lykli vottunarmiðstöðvarinnar;
- stillingarskráarsniðmát.
Tengstu við netþjóninn, hækkaðu réttindi og farðu í möppuna sem við höfum búið til "~/openvpn".
sudo -s
cd ~/openvpn
Búa til einkalykil og beiðni um vottorð fyrir viðskiptavininn. Sem rök skaltu tilgreina handahófskennt nafn; í okkar tilviki er það „viðskiptavinur1“.
./easyrsa gen-req client1 nopass
Sláðu inn lykilorðið sem við settum þegar við bjuggum til rótarvottorðið og láttu Common Name vera sjálfgefið gildi.
Undirritaðu beiðni um skírteini viðskiptavinarins.
./easyrsa sign-req client client1
Í þessu skrefi skaltu svara „já“ til að staðfesta undirskriftina og slá síðan inn lykilorðið sem var búið til við myndun rótarvottorðsins.
Til þæginda skulum við búa til möppu sem heitir 'client1' í heimamöppunni og afrita allar skrár sem ætlaðar eru til flutnings á tölvu viðskiptavinarins inn í hana.
mkdir ~/client1
cp pki/issued/client1.crt pki/private/client1.key pki/ca.crt ~/client1/
Afritaðu sniðmát stillingarskráar viðskiptavinarins í sömu möppu. Breyttu skráarendingunni í „.ovpn“ á meðan þú afritar.
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client1/client.ovpn
Breyttu eiganda möppunnar og allra skráanna „~/client1/“ til að geta dreift þeim til notandans. Gerum „mihail“ að eiganda í okkar tilviki.
chown -R mihail:mihail ~/client1
Farðu í tölvuna á biðlaranum og afritaðu innihald möppunnar „~/client1/“ . Þú getur gert það með hjálp „PSCP“ tólsins sem fylgir Putty.
PSCP -r mihail@[IP_сервера]:/home/mihail/client1 c:\client1
Þú getur geymt lykilskrárnar „ca.crt“ , „client1.crt“ , „client1.key“ hvar sem þú vilt. Í okkar tilviki eru þær í þessari möppu „c:\Program Files\OpenVPN\keys“ og við setjum stillingarskrána „client.ovpn“ í möppuna „c:\Program Files\OpenVPN\config“.
Nú skulum við byrja að stilla biðlarann. Opnaðu skrána „c:\Program Files\OpenVPN\config\client.ovpn“ í textaritli og breyttu eftirfarandi línum:
#announce that this is the client
client
#interface and protocol just like on the server
dev tun
proto udp
#IP address of the server and port
remote ip_address 1194
#saving parameters after reload
persist-key
persist-tun
#key paths
ca “c:\\Program Files\\OpenVPN\\keys\\ca.cert”
cert “c:\\Program Files\\OpenVPN\\keys\\client1.crt”
key “c:\\Program Files\\OpenVPN\\keys\\client1.key”
#enable server verification
remote-cert-tls server
#disable extra encryption
#tls-auth ta.key 1
cipher AES-256-CBC
auth-nocache
verb 3
Látið restina ósnortna.
Vistaðu skrána og ræstu biðlaraforritið „OpenVPN GUI“.
Hægrismelltu á forritatáknið á verkefnastikunni og veldu „Tengjast“ . Ef tengingin tekst verður táknið grænt.
Notaðu hvaða netþjónustu sem er til að ganga úr skugga um að opinbera IP-talan þín hafi breyst og sé nú sú sama og IP-tala netþjónsins.