Ni ode oni, imọ-ẹrọ VPN di olokiki diẹ sii. Awọn olumulo deede lo VPN lati wọle si Intanẹẹti lailewu. O tun ṣe iranlọwọ ni ayika awọn oju opo wẹẹbu ati awọn iṣẹ ti o dina ni agbegbe ati daabobo lodi si ihuwasi irira ita ti o ṣeeṣe. Nigbati o ba n sopọ si olupin VPN kan, oju eefin ailewu wa laarin kọnputa rẹ ati olupin ti ko le wọle lati ita, nitorinaa olupin VPN di aaye iwọle Intanẹẹti rẹ. Ọpọlọpọ awọn iṣẹ VPN wa nibẹ, mejeeji ọfẹ ati isanwo, ṣugbọn ti wọn ko ba ṣiṣẹ fun ọ fun idi kan, o le tunto olupin VPN tirẹ nigbagbogbo.
Láti lo VPN rẹ, o yẹ kí o yá olupin VPS . Oríṣiríṣi software ló wà tó ń jẹ́ kí o ṣẹ̀dá asopọ VPN. Ó yàtọ̀ sí ara wọn nípasẹ̀ àwọn ẹ̀rọ ìṣiṣẹ́ tí a ń ṣe àtìlẹ́yìn àti àwọn algoridimu tí a lò. A ó wo ọ̀nà méjì láti ṣètò olupin VPN. Èkíní dá lórí ìlànà PPTP tí a ti kà sí pé ó ti pẹ́ tí kò sì ní ààbò ṣùgbọ́n ó rọrùn láti ṣètò. Èkejì lo software òde òní àti ààbò OpenVPN ṣùgbọ́n ó nílò fífi ohun èlò oníbàárà ẹni-kẹta sílẹ̀ àti ìlànà ìṣètò tí ó péye.
Ni agbegbe idanwo wa, a yoo lo olupin foju ti agbara nipasẹ Ubuntu Server 18.04. A ogiriina ti wa ni lilọ lati wa ni pipa Switched lori olupin nitori awọn oniwe-iṣeto ni ye kan lọtọ article. A yoo ṣe apejuwe ilana iṣeto ni Windows 10.
igbaradi
Laibikita iru olupin VPN ti o yan, iraye si intanẹẹti yoo wa ni ṣeto nipasẹ awọn ọna isọpọ ti ẹrọ iṣẹ. Lati le ṣii iraye si Intanẹẹti nipasẹ wiwo iṣẹ ita o ni lati gba ifiranšẹ siwaju soso laarin awọn atọkun ati tunto itumọ adirẹsi nẹtiwọki.
Láti tan ìfiranṣẹ packet ṣí fáìlì “/etc/sysctl.conf” kí o sì yí iye paramita “net.ipv4.ip_forward” padà sí 1.
Lati le lo awọn ayipada laisi atunbere kọnputa, ṣiṣe aṣẹ naa
sudo sysctl -p /etc/sysctl.conf
A ṣe àtúnṣe ìtumọ̀ àdírẹ́sì nẹ́tíwọ́ọ̀kì nípasẹ̀ ọ̀nà iptables . Àkọ́kọ́, ṣàyẹ̀wò orúkọ ìfọwọ́sowọ́pọ̀ nẹ́tíwọ́ọ̀kì òde rẹ tí ó ń ṣiṣẹ́ àṣẹ “ip link show” - ìwọ yóò nílò rẹ̀ ní ìgbésẹ̀ tí ó tẹ̀lé. Orúkọ wa ni “ens3”.
Mu itumọ adirẹsi nẹtiwọki ṣiṣẹ ni wiwo ita rẹ fun gbogbo awọn apa nẹtiwọki agbegbe.
sudo iptables -t nat -A POSTROUTING -o ens3 -j MASQUERADE
Ṣe akiyesi pe o nilo lati pato orukọ gidi ti wiwo olupin rẹ, o le yatọ si tiwa.
Nípa àìṣeédá, gbogbo òfin tí iptables dá ni a máa tún ṣe lẹ́yìn tí olupin bá ti tún bẹ̀rẹ̀. Láti dènà èyí, lo ohun èlò “iptables-persistent” . Fi pákẹ́ẹ̀tì yìí sí i:
sudo apt install iptables-persistent
Ní àkókò kan nígbà tí a bá ń fi sori ẹrọ, o máa rí fèrèsé ìṣètò kan tí yóò dámọ̀ràn pé kí o fi àwọn òfin iptables tó wà lọ́wọ́lọ́wọ́ pamọ́. Níwọ́n ìgbà tí a ti ṣàlàyé àwọn òfin náà, kàn jẹ́rìí sí i kí o sì tẹ “Bẹ́ẹ̀ni” lẹ́ẹ̀mejì. Láti ìgbà yìí ni a ó ti lo àwọn òfin náà láìfọwọ́sí lẹ́yìn tí olupin bá ti tún bẹ̀rẹ̀ iṣẹ́ náà.
Olupin PPTP
Iṣeto ni olupin
Fi sori ẹrọ naa:
sudo apt install pptpd
Lẹ́yìn tí ìfi sori ẹrọ bá parí, ṣí fáìlì “/etc/ppptpd.conf” nínú èyíkéyìí olóòtú ọ̀rọ̀ kí o sì ṣe àtúnṣe rẹ̀ bí èyí:
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
Lẹ́yìn náà, ṣe àtúnṣe fáìlì náà “/etc/ppp/pptpd-options” . Ọ̀pọ̀lọpọ̀ àwọn paramita ni a ṣètò nípasẹ̀ àìyípadà.
#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í ìpele tó tẹ̀lé e, o ní láti ṣẹ̀dá àkọsílẹ̀ fún àwọn ìsopọ̀ oníbàárà. Jẹ́ kí a sọ pé o fẹ́ fi “vpnuser” olùlò kún un pẹ̀lú ọ̀rọ̀ìpamọ́ “1” kí o sì gba addressing dynamic láàyè fún un. Ṣí fáìlì náà “/etc/ppp/chap-secrets” kí o sì fi ìlà tó tẹ̀lé e pẹ̀lú àwọn paramita olùlò kún un ní ìparí fáìlì náà:
vpnuser pptpd 1 *
Iye “pptpd” ni orúkọ iṣẹ́ tí a sọ nínu fáìlì “pptpd-options” . Dípò “*” o lè sọ àdírẹ́sì IP tí a ti yàn tẹ́lẹ̀. Nínú àbájáde rẹ̀, fáìlì “chap-secrets” yẹ kí ó rí bí èyí:
Láti lo àwọn ètò náà, tún iṣẹ́ pptpd ṣe kí o sì fi kún un sí àgbékalẹ̀ àdáni.
sudo systemctl restart pptpd
sudo systemctl enable pptpd
Iṣeto olupin ti pari.
Onibara iṣeto ni
Ṣii “Bẹrẹ” - “Eto” - “Nẹtiwọọki & Intanẹẹti” - “VPN” ki o tẹ “Fi asopọ VPN kun”
Tẹ awọn paramita asopọ sinu window ti o ṣii ki o tẹ "Fipamọ".
- Olupese VPN: "Windows (ti a ṣe sinu)"
- Orukọ asopọ: "vpn_connect" (o le yan orukọ eyikeyi)
- Orukọ olupin tabi adirẹsi: (pato adiresi IP ita ti olupin naa)
- Iru VPN: "Alaifọwọyi"
- Iru alaye iwọle: “Orukọ olumulo ati ọrọ igbaniwọle”
- Orukọ olumulo: vpnuser (orukọ pato ninu faili “aṣiri-aṣiri” lori olupin naa)
- Ọrọigbaniwọle: 1 (gẹgẹbi ninu faili “aṣiri-aṣiri”)
Lẹ́yìn tí o bá ti fi àwọn paramita pamọ́, o máa rí ìsopọ̀ VPN tuntun nínú fèrèsé náà. Tẹ ìsopọ̀ náà ní apá òsì kí o sì yan “Sopọ̀” . Tí ìsopọ̀ náà bá yọrí sí rere, o máa rí ipò “Sopọ̀” .
Nínú àwọn àṣàyàn, ìwọ yóò rí àwọn àdírẹ́sì inú ti oníbàárà àti olupin náà. Àpótí “Àdírẹ́sì Ibùdó” fi àdírẹ́sì olupin ìta hàn.
Nígbà tí a bá so pọ̀ mọ́ ara wọn, àdírẹ́sì IP inú ti olupin náà, 172.16.0.1 nínú ọ̀ràn wa, yóò di ẹnu ọ̀nà àdáni fún gbogbo àwọn pakẹ́ẹ̀tì tí ń jáde.
Lilo eyikeyi iṣẹ ori ayelujara o le rii daju pe adiresi IP ita ti kọnputa jẹ bayi bakanna bi adiresi IP olupin VPN rẹ.
OpenVPN server
Iṣeto ni olupin
Jẹ ki a ṣe igbega ipele awọn igbanilaaye ti olumulo lọwọlọwọ nitori fun iṣeto wa siwaju a yoo nilo wiwọle root.
sudo -s
Fi gbogbo àwọn pákẹ́ẹ̀tì tó yẹ sínú rẹ̀. A ó nílò pákẹ́ẹ̀tì “Easy-RSA” láti ṣàkóso àwọn kọ́kọ́rọ́ ìkọ̀kọ̀.
apt install openvpn easy-rsa iptables-persistent
Gba awọn asopọ ti nwọle lori ibudo 1194 nipasẹ ilana UDP ati lo awọn ofin iptables.
sudo iptables -I INPUT -p udp --dport 1194 -j ACCEPT
sudo netfilter-persistent save
Ṣẹda itọsọna kan pẹlu awọn faili ti a daakọ lati inu package “Easy-RSA” ki o lọ kiri sinu rẹ.
make-cadir ~/openvpn
cd ~/openvpn
Ṣe ina Awọn amayederun Bọtini gbangba (PKI).
./easyrsa init-pki
Ṣe ina Ijẹrisi Ijẹrisi (CA) ijẹrisi root.
./easyrsa build-ca
Lakoko ilana ẹda, iwọ yoo ti ọ lati ṣeto ati ranti ọrọ igbaniwọle kan. Iwọ yoo tun nilo lati dahun awọn ibeere ati tẹ alaye sii nipa oniwun bọtini. O le fi awọn iye aiyipada ti a pese silẹ ni awọn biraketi onigun mẹrin. Tẹ "Tẹ" lati pari igbewọle.
Ṣe ina kọkọrọ ikọkọ ati ibeere ijẹrisi kan. Gẹgẹbi ariyanjiyan, pato orukọ lainidii; Ninu ọran tiwa, “vpn-server” ni.
./easyrsa gen-req vpn-server nopass
Fi iye Orukọ Wọpọ silẹ bi aiyipada.
Wole ibeere ijẹrisi olupin ti ipilẹṣẹ.
./easyrsa sign-req server vpn-server
Ni ipele yii, dahun “bẹẹni” lati jẹrisi ibuwọlu naa, lẹhinna tẹ ọrọ igbaniwọle ti o ṣẹda lakoko iran ijẹrisi root.
Ṣe ipilẹṣẹ Diffie-Hellman. Awọn paramita wọnyi ni a lo fun paṣipaarọ bọtini aabo laarin olupin ati alabara.
./easyrsa gen-dh
Gbogbo awọn faili pataki ti ni ipilẹṣẹ. Jẹ ki a ṣẹda folda "awọn bọtini" kan ninu OpenVPN ṣiṣẹ liana lati tọju awọn bọtini ati daakọ awọn faili ti o ṣẹda nibẹ.
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
Tunto NAT lilo iptables awọn ofin. Ṣẹda faili ti a npè ni nat ati ki o ṣii o fun ṣiṣatunkọ ninu awọn /etc/openvpn/ liana.
#!/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
Fi faili pamọ ki o jẹ ki o ṣiṣẹ.
sudo chmod 755 /etc/openvpn/nat
Daakọ awoṣe iṣeto olupin naa.
cp /usr/share/doc/openvpn/examples/sample-config-files/server.conf /etc/openvpn/
Ṣí fáìlì náà “/etc/openvpn/server.conf” fún àtúnṣe, rí i dájú pé ó ní àwọn ìlà wọ̀nyí nínú rẹ̀, kí o sì ṣàtúnṣe wọn tí ó bá yẹ:
#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
Jeki gbigbe ijabọ lori olupin naa.
sudo sysctl -w net.ipv4.ip_forward=1
echo 'net.ipv4.ip_forward=1' | sudo tee -a /etc/sysctl.conf
Bẹrẹ OpenVPN lati lo iṣeto naa.
systemctl restart openvpn@server
Iṣeto olupin ti pari!
Onibara iṣeto ni
Lọ sí ojú-òpó wẹ́ẹ̀bù OpenVPN “ https://openvpn.net ”, lọ sí abala “ÀWỌN ÀGBÈGBÈ”.
Yi lọ si isalẹ ki o ṣe igbasilẹ ẹrọ fifi sori ẹrọ fun ẹya ẹrọ iṣẹ rẹ. Ninu ọran wa, o jẹ Windows 11 ARM64.
Fi sori ẹrọ ohun elo ti nlọ gbogbo awọn paramita nipasẹ aiyipada.
Ni ipele atẹle iwọ yoo nilo lati mura faili atẹle lori olupin naa ki o gbe wọn si kọnputa alabara:
- àkọsílẹ ati ni ikọkọ bọtini;
- ẹda bọtini ile-iṣẹ ijẹrisi;
- konfigi awoṣe faili.
Sopọ si olupin naa, gbe awọn anfani ga, ki o lọ kiri si itọsọna ti a ṣẹda "~/openvpn".
sudo -s
cd ~/openvpn
Ṣẹda bọtini ikọkọ ati ibeere ijẹrisi fun alabara. Gẹgẹbi ariyanjiyan, pato orukọ lainidii; ninu ọran tiwa, “client1” ni.
./easyrsa gen-req client1 nopass
Tẹ ọrọ igbaniwọle sii ti a ṣeto nigbati o ṣẹda ijẹrisi root ki o lọ kuro ni Orukọ Wọpọ bi aiyipada.
Wole ibeere ijẹrisi alabara ti ipilẹṣẹ.
./easyrsa sign-req client client1
Ni ipele yii, dahun “bẹẹni” lati jẹrisi ibuwọlu naa, lẹhinna tẹ ọrọ igbaniwọle ti o ṣẹda lakoko iran ijẹrisi root.
Fun irọrun, jẹ ki a ṣẹda folda kan ti a npè ni 'client1' ninu itọsọna ile ati daakọ gbogbo awọn faili ti a pinnu fun gbigbe si kọnputa alabara sinu rẹ.
mkdir ~/client1
cp pki/issued/client1.crt pki/private/client1.key pki/ca.crt ~/client1/
Daakọ awoṣe faili iṣeto alabara si itọsọna kanna. Yi itẹsiwaju faili pada si “.ovpn” lakoko didaakọ.
cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf ~/client1/client.ovpn
Yí ẹni tó ni àkójọ ìwé àkójọ náà àti gbogbo fáìlì “~/client1/” padà kí ó lè pín wọn fún oníbàárà. Ẹ jẹ́ ká sọ “mihail” di ẹni tó ni àkójọ ìwé náà nínú ọ̀ràn wa.
chown -R mihail:mihail ~/client1
Lọ sí kọ̀mpútà oníbàárà kí o sì daakọ àkóónú fódà “~/client1/” . O lè ṣe èyí pẹ̀lú ìrànlọ́wọ́ ohun èlò “PSCP” , èyí tí ó bá Putty mu.
PSCP -r mihail@[IP_сервера]:/home/mihail/client1 c:\client1
O le tọju awọn faili bọtini “ca.crt” , “client1.crt” , “client1.key” nibikibi ti o ba fẹ. Ninu ọran wa, wọn wa ninu folda yii “c:\Program Files\OpenVPN\keys” , a si ṣe atunto faili iṣeto “client.ovpn” sinu itọsọna “c:\Program Files\OpenVPN\config”.
Ẹ jẹ́ ká bẹ̀rẹ̀ sí í ṣe àtúnṣe sí ẹ̀rọ ìṣàtúnṣe. Ṣí fáìlì náà “c:\Program Files\OpenVPN\config\client.ovpn” nínú àtúnṣe ọ̀rọ̀ kí o sì ṣàtúnṣe àwọn ìlà wọ̀nyí:
#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
Fi iyokù silẹ laifọwọkan.
Fi fáìlì náà pamọ́ kí o sì bẹ̀rẹ̀ ohun èlò ìṣàfilọ́lẹ̀ oníbàárà “OpenVPN GUI”.
Tẹ-ọtun lori aami app ninu iṣẹ-ṣiṣe ki o yan “Sopọ” . Ti asopọ naa ba ṣaṣeyọri aami naa yoo di alawọ ewe.
Lo eyikeyi iṣẹ ori ayelujara lati rii daju pe adiresi IP ti gbogbo eniyan ti yipada ati pe o jẹ bayi bakanna bi adiresi IP olupin naa.