An-diugh, tha teicneòlas VPN a’ fàs nas mòr-chòrdte. Bidh luchd-cleachdaidh àbhaisteach a’ cleachdadh VPN gus faighinn chun eadar-lìn gu sàbhailte. Bidh e cuideachd a’ cuideachadh le bhith a’ faighinn timcheall làraich-lìn agus seirbheisean a tha dùinte gu h-ionadail agus a’ dìon an aghaidh giùlan droch-rùnach a-muigh. Nuair a tha thu a’ ceangal ri frithealaiche VPN, tha tunail sàbhailte eadar do choimpiutair agus am frithealaiche nach fhaighear thuige bhon taobh a-muigh, agus mar sin bidh am frithealaiche VPN na àite inntrigidh eadar-lìn agad. Tha tòrr sheirbheisean VPN a-muigh an sin, gach cuid an-asgaidh agus pàighte, ach mura h-eil iad ag obair dhut airson adhbhar air choireigin, faodaidh tu an-còmhnaidh am frithealaiche VPN agad fhèin a rèiteachadh.
Gus an VPN agad fhèin a ruith, bu chòir dhut frithealaiche VPS fhaighinn air màl . Tha bathar-bog eadar-dhealaichte ann a leigeas leat ceangal VPN a chruthachadh. Tha iad eadar-dhealaichte bho chèile anns na siostaman obrachaidh a tha a’ faighinn taic agus na h-algairidhean a thathar a’ cleachdadh. Bheir sinn sùil air dà dhòigh neo-eisimeileach airson frithealaiche VPN a stèidheachadh. Tha a’ chiad fhear stèidhichte air protocol PPTP a thathas a’ meas mar-thà seann-fhasanta agus nach eil tèarainte ach a tha gu math furasta a rèiteachadh. Bidh am fear eile a’ cleachdadh bathar-bog ùr-nodha is tèarainte OpenVPN ach feumaidh e tagradh teachdaiche treas-phàrtaidh a stàladh agus pròiseas rèiteachaidh nas mionaidiche.
Anns an àrainneachd deuchainn againn, tha sinn gu bhith a’ cleachdadh frithealaiche brìgheil le cumhachd bho Ubuntu Server 18.04. Thèid balla-teine a chuir dheth air an fhrithealaiche oir tha an rèiteachadh aige airidh air artaigil air leth. Bheir sinn cunntas air a’ phròiseas rèiteachaidh air Windows 10.
Ullachadh
Ge bith dè an frithealaiche VPN a thaghas tu, thèid an ruigsinneachd eadar-lìn a chuir air dòigh tro dhòighean aonaichte den t-siostam obrachaidh. Gus ruigsinneachd eadar-lìn fhosgladh tro eadar-aghaidh seirbheis taobh a-muigh feumaidh tu leigeil le pacaid gluasad air adhart eadar an eadar-aghaidh agus eadar-theangachadh seòladh lìonra a rèiteachadh.
Gus cur air adhart pacaidean, fosgail am faidhle “/etc/sysctl.conf” agus atharraich luach paramadair “net.ipv4.ip_forward” gu 1.
Gus atharrachaidhean a chuir an sàs gun a bhith ag ath-thòiseachadh a’ choimpiutair, ruith an àithne
sudo sysctl -p /etc/sysctl.conf
Tha eadar-theangachadh seòlaidhean lìonra air a rèiteachadh le iptables . An toiseach, thoir sùil air ainm an eadar-aghaidh lìonra taobh a-muigh agad a’ ruith an àithne “ip link show” - bidh feum agad air aig an ath cheum. Is e “ens3” an t-ainm a th’ againn.
Dèan comas eadar-theangachadh seòladh lìonra aig an eadar-aghaidh taobh a-muigh agad airson a h-uile nod lìonra ionadail.
sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
Thoir an aire gum feum thu fìor ainm eadar-aghaidh an fhrithealaiche agad a shònrachadh, faodaidh e a bhith eadar-dhealaichte bhon fhear againn.
Gu gnàthach, thèid na riaghailtean uile a chruthaicheas iptables ath-shuidheachadh às dèidh don fhrithealaiche ath-thòiseachadh. Gus casg a chuir air sin, cleachd an goireas “iptables-persistent” . Stàlaich am pasgan a leanas:
sudo apt install iptables-persistent
Aig àm air choreigin rè a’ phròiseis stàlaidh, chì thu uinneag rèiteachaidh a mholas dhut riaghailtean gnàthach iptables a shàbhaladh. Leis gu bheil na riaghailtean air am mìneachadh mu thràth, dìreach dearbhaich agus cliog air “Tha” dà uair. Leis a-nis thèid na riaghailtean a chur an sàs gu fèin-ghluasadach às deidh don fhrithealaiche ath-thòiseachadh.
Frithealaiche PPTP
Suidheachadh frithealaiche
Stàlaich am pasgan:
sudo apt install pptpd
Às dèidh don stàladh crìochnachadh, fosgail am faidhle “/etc/pptpd.conf” ann an deasaiche teacsa sam bith agus deasaich e mar seo:
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
Às dèidh sin, deasaich am faidhle “/etc/ppp/pptpd-options” . Tha a’ mhòr-chuid de na paramadairean air an suidheachadh gu bunaiteach.
#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
Aig an ath ìre, feumaidh tu clàr a chruthachadh airson ceanglaichean luchd-dèiligidh. Abair gu bheil thu airson neach-cleachdaidh “vpnuser” a chur ris leis am facal-faire “1” agus leigeil le seòladh fiùghantach dha. Fosgail am faidhle “/etc/ppp/chap-secrets” agus cuir an loidhne a leanas leis na paramadairean aig deireadh an fhaidhle:
vpnuser pptpd 1 *
’S e luach “pptpd” ainm na seirbheis a shònraich sinn san fhaidhle “pptpd-options” . An àite “*” faodaidh tu seòladh IP stèidhichte a shònrachadh. Anns an toradh, bu chòir don fhaidhle “chap-secrets” coimhead mar seo:
Gus na roghainnean a chur an sàs, ath-shuidhich an t -seirbheis pptpd agus cuir ris an luchdachadh fèin-ghluasadach e.
sudo systemctl restart pptpd
sudo systemctl enable pptpd
Tha rèiteachadh an fhrithealaiche deiseil.
Suidheachadh teachdaiche
Fosgail “Tòisich” - “Roghainnean” - “Lìonra is Eadar-lìon” - “VPN” agus cliog air “Cuir ceangal VPN ris”.
Cuir a-steach paramadairean a’ cheangail san uinneag a dh’fhosgail agus cliog air “Sàbhail”
- Solaraiche VPN: “Windows (air a thogail a-steach)”
- Ainm ceangail: “vpn_connect” (faodaidh tu ainm sam bith a thaghadh)
- Ainm no seòladh an fhrithealaiche: (sònraich seòladh IP taobh a-muigh an fhrithealaiche)
- Seòrsa VPN: “Auto”
- Seòrsa fiosrachaidh logadh a-steach: “Ainm neach-cleachdaidh agus facal-faire”
- Ainm-cleachdaidh: cleachdaiche vpn (ainm air a shònrachadh anns an fhaidhle “chap-secrets” air an fhrithealaiche)
- Facal-faire: 1 (mar a tha san fhaidhle “chap-secrets”)
Às dèidh dhut na paramadairean a shàbhaladh, chì thu an ceangal VPN ùr san uinneig. Cliog clì air a’ cheangal agus tagh “Ceangail” . Ma shoirbhicheas leis a’ cheangal, chì thu inbhe “Ceangailte”.
Anns na Roghainnean, gheibh thu seòlaidhean a-staigh an neach-dèiligidh agus an fhrithealaiche. Tha an raon “Seòladh ceann-uidhe” a’ sealltainn seòladh an fhrithealaiche taobh a-muigh.
Nuair a bhios e ceangailte, bidh seòladh IP a-staigh an fhrithealaiche, 172.16.0.1 nar cùis-ne, mar an geata bunaiteach airson a h-uile pacaid a-mach.
Le bhith a’ cleachdadh seirbheis air-loidhne sam bith faodaidh tu dèanamh cinnteach gu bheil seòladh IP taobh a-muigh a’ choimpiutair a-nis co-ionann ri seòladh IP an fhrithealaiche VPN agad.
Am frithealaiche OpenVPN
Suidheachadh frithealaiche
Brosnaichidh sinn ìre ceadan an neach-cleachdaidh gnàthach oir airson ar rèiteachadh eile bidh feum againn air ruigsinneachd freumh.
sudo -s
Stàlaich na pacaidean riatanach uile. Feumaidh sinn am pasgan “Easy-RSA” gus iuchraichean crioptachaidh a riaghladh.
apt install openvpn easy-rsa iptables-persistent
Leig le ceanglaichean a tha a’ tighinn a-steach air port 1194 tro phròtacal UDP agus cuir riaghailtean iptables an sàs.
sudo iptables -I INPUT -p udp --dport 1194 -j ACCEPT
sudo netfilter-persistent save
Cruthaich pasgan le faidhlichean air an lethbhreacadh bhon phacaid “Easy-RSA” agus seòl a-steach ann.
make-cadir ~/openvpn
cd ~/openvpn
Bun-structar Iuchrach Poblach (PKI) a chruthachadh.
./easyrsa init-pki
Cruthaich teisteanas freumhach an Ùghdarrais Teisteanais (CA).
./easyrsa build-ca
Rè a’ phròiseis chruthachaidh, thèid iarraidh ort facal-faire a shuidheachadh agus a chuimhneachadh. Feumaidh tu cuideachd ceistean a fhreagairt agus fiosrachadh a chuir a-steach mu shealbhadair na h-iuchrach. Faodaidh tu na luachan bunaiteach fhàgail a tha air an toirt seachad ann am bragan ceàrnagach. Brùth “Enter” gus an cuir a-steach a chrìochnachadh.
Cruthaich iuchair phrìobhaideach agus iarrtas teisteanais. Mar argamaid, sònraich ainm neo-riaghailteach; nar cùis-ne, is e “vpn-server” a th’ ann.
./easyrsa gen-req vpn-server nopass
Fàg an luach Ainm Cumanta mar an luach bunaiteach.
Cuir d’ ainm ris an iarrtas airson teisteanas frithealaiche a chaidh a chruthachadh.
./easyrsa sign-req server vpn-server
Aig a’ cheum seo, freagair “tha” gus an t-ainm-sgrìobhte a dhearbhadh, agus an uairsin cuir a-steach am facal-faire a chaidh a chruthachadh nuair a chaidh an teisteanas freumha a chruthachadh.
Cruthaich paramadairean Diffie-Hellman. Tha na paramadairean seo air an cleachdadh airson iomlaid iuchraichean tèarainte eadar an fhrithealaiche agus an neach-dèiligidh.
./easyrsa gen-dh
Chaidh na faidhlichean riatanach uile a chruthachadh. Cruthaichidh sinn pasgan "keys" ann am pasgan-obrach OpenVPN gus na h-iuchraichean a stòradh agus lethbhreac a dhèanamh de na faidhlichean a chaidh a chruthachadh an sin.
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
Rèitich NAT a’ cleachdadh iptables riaghailtean. Cruthaich faidhle leis an ainm nat agus fosgail e airson deasachadh anns a’ /etc/openvpn/ eòlaire.
#!/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
Sàbhail am faidhle agus dèan e comasach a ruith.
sudo chmod 755 /etc/openvpn/nat
Dèan lethbhreac den teamplaid rèiteachaidh frithealaiche.
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/
Fosgail am faidhle “/etc/openvpn/server.conf” airson deasachadh, dèan cinnteach gu bheil na loidhnichean a leanas ann, agus deasaich iad ma tha feum orra:
#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
Cuir an comas trafaic a chur air adhart air an fhrithealaiche.
sudo sysctl -w net.ipv4.ip_forward=1
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
Tòisich OpenVPN gus an rèiteachadh a chur an sàs.
systemctl restart openvpn@server
Tha rèiteachadh an fhrithealaiche deiseil!
Suidheachadh teachdaiche
Rach gu làrach-lìn oifigeil OpenVPN “ https://openvpn.net ”, rach don earrann “COIMHEARSNACHD”.
Scrollaich sìos agus luchdaich sìos an stàlaichear airson an tionndadh den t-siostam obrachaidh agad. Nar cùis-ne, is e Windows 11 ARM64 a th’ ann.
Stàlaich an aplacaid a 'fàgail a h-uile paramadair gu bunaiteach.
Aig an ath ìre feumaidh tu am faidhle a leanas ullachadh air an fhrithealaiche agus an gluasad gu coimpiutair an neach-dèiligidh:
- iuchraichean poblach is prìobhaideach;
- lethbhreac de iuchair an ionaid teisteanais;
- teamplaid faidhle config.
Ceangail ris an fhrithealaiche, àrdaich sochairean, agus seòl chun eòlaire a chruthaich sinn "~/openvpn".
sudo -s
cd ~/openvpn
Cruthaich iuchair phrìobhaideach agus iarrtas teisteanais airson a’ chliant. Mar argamaid, sònraich ainm neo-riaghailteach; nar cùis-ne, is e “client1” a th’ ann.
./easyrsa gen-req client1 nopass
Cuir a-steach am facal-faire a shuidhich sinn nuair a chruthaich sinn an teisteanas freumha agus fàg an luach Ainm Cumanta mar an àbhaist.
Cuir d’ ainm ris an iarrtas teisteanais teachdaiche a chaidh a chruthachadh.
./easyrsa sign-req client client1
Aig a’ cheum seo, freagair “tha” gus an t-ainm-sgrìobhte a dhearbhadh, agus an uairsin cuir a-steach am facal-faire a chaidh a chruthachadh nuair a chaidh an teisteanas freumha a chruthachadh.
Airson goireasachd, cruthaichidh sinn pasgan leis an ainm ‘client1’ anns an eòlaire dachaigh agus dèanamaid lethbhreac de na faidhlichean uile a tha san amharc airson an gluasad chun choimpiutair teachdaiche ann.
mkdir ~/client1
cp pki/issued/client1.crt pki/private/client1.key pki/ca.crt ~/client1/
Dèan lethbhreac den teamplaid faidhle rèiteachaidh den neach-dèiligidh dhan aon eòlaire. Atharraich leudachadh an fhaidhle gu “.ovpn” fhad ’s a tha thu ga lethbhreacadh.
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client1/client.ovpn
Atharraich sealbhadair an eòlaire agus na faidhlichean uile “~/client1/” gus an urrainn dhut an sgaoileadh chun neach-dèiligidh. Dèanamaid “mihail” mar an t-sealbhadair nar cùis-ne.
chown -R mihail:mihail ~/client1
Rach gu coimpiutair a’ chleachdaiche agus dèan lethbhreac de shusbaint am pasgan “~/client1/” . ’S urrainn dhut sin a dhèanamh le cuideachadh bhon ghoireas “PSCP” , a tha a’ tighinn le Putty.
PSCP -r mihail@[IP_сервера]:/home/mihail/client1 c:\client1
’S urrainn dhut faidhlichean iuchair “ca.crt” , “client1.crt” , “client1.key” a stòradh ge bith càite a bheil thu ag iarraidh. Nar cùis-ne, tha iad san phasgan seo “c:\Program Files\OpenVPN\keys” , agus cuiridh sinn am faidhle rèiteachaidh “client.ovpn” san eòlaire “c:\Program Files\OpenVPN\config”.
A-nis tòisichidh sinn air rèiteachadh a’ chleachdaiche. Fosgail am faidhle “c:\Program Files\OpenVPN\config\client.ovpn” ann an deasaiche teacsa agus deasaich na loidhnichean a leanas:
#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
Fàg an còrr gun suathadh.
Sàbhail am faidhle agus cuir air bhog an aplacaid teachdaiche “OpenVPN GUI”.
Briog deas air ìomhaigh an aplacaid anns a’ bhàr-tasg agus tagh “Ceangail” . Ma shoirbhicheas leis a’ cheangal, tionndaidhidh an ìomhaigh uaine.
Cleachd seirbheis air-loidhne sam bith gus dèanamh cinnteach gu bheil an seòladh IP poblach agad air atharrachadh agus gu bheil e a-nis co-ionann ri seòladh IP an fhrithealaiche.