Depi WireGuard nwayo nan lavni Linux 5.6, mwen te deside wè pi bon fason pou entegre VPN sa a ak mwen an .
Ekipman
- Franbwaz Pi 3 ak modil LTE ak IP piblik. Pral gen yon sèvè VPN (ki refere yo kòm edgewalker)
- Telefòn nan limen Android, ki dwe itilize yon VPN pou tout kominikasyon
- Kaye Linux, ki ta dwe sèlman itilize VPN nan rezo a
Chak aparèy ki konekte ak yon VPN dwe kapab konekte ak tout lòt aparèy. Pou egzanp, yon telefòn ta dwe kapab konekte nan yon sèvè entènèt sou yon laptop si tou de aparèy yo fè pati yon rezo VPN. Si konfigirasyon an se senp ase, Lè sa a, ou ka panse sou konekte nan yon VPN ak yon Desktop (via Ethernet).
Lè nou konsidere ke koneksyon filè ak san fil yo ap vin mwens an sekirite sou tan (, и ), M ap seryezman konsidere itilize WireGuard pou tout aparèy mwen yo, kèlkeswa anviwònman yo ap fonksyone a.
Enstalasyon lojisyèl
WireGuard bay pou pifò distribisyon yo Linux, Windows и macOSAplikasyon pou Android ak iOS yo delivre atravè magazen aplikasyon yo.
Mwen gen dènye Fedora a Linux 31, epi anvan enstalasyon an mwen te twò parese pou m li manyèl la. Mwen fèk jwenn pakè yo. wireguard-tools, enstale yo, ak Lè sa a, pa t 'kapab konnen poukisa pa gen anyen t'ap travay. Pli lwen envestigasyon revele ke mwen pa t 'gen pake a enstale wireguard-dkms (ak yon chofè rezo), epi li pa t 'nan repozitwa distribisyon mwen an.
Si mwen te li enstriksyon yo, mwen ta pran bon etap yo:
$ sudo dnf copr enable jdoss/wireguard
$ sudo dnf install wireguard-dkms wireguard-tools Mwen gen distribisyon Raspbian Buster enstale sou Raspberry Pi mwen an, gen deja yon pake wireguard, enstale li:
$ sudo apt install wireguardNan telefòn lan Android Mwen enstale aplikasyon an soti nan katalòg ofisyèl Google App Store la.
Enstale kle
Pou otantifye nĹuds yo Wireguard Itilize yon senp konplo kle prive/piblik pou otantifye nĹud VPN yo. Ou ka fasilman jenere kle VPN ak kòmand sa a:
$ wg genkey | tee wg-laptop-private.key | wg pubkey > wg-laptop-public.key
$ wg genkey | tee wg-server-private.key | wg pubkey > wg-server-public.key
$ wg genkey | tee wg-mobile-private.key | wg pubkey > wg-mobile-public.keySa a ban nou twa pè kle (sis fichye). Nou pa pral fè referans a fichye nan konfigirasyon, men kopye sa ki isit la: chak kle se yon liy nan base64.
Kreye yon fichye konfigirasyon pou yon sèvè VPN (Raspberry Pi)
Konfigirasyon an se byen senp, mwen te kreye dosye sa a /etc/wireguard/wg0.conf:
[Interface]
Address = 10.200.200.1/24
ListenPort = 51820
PrivateKey = <copy private key from wg-server-private.key>
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o wwan0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o wwan0 -j MASQUERADE
[Peer]
# laptop
PublicKey = <copy public key from wg-laptop-public.key>
AllowedIPs = 10.200.200.2/32
[Peer]
# mobile phone
PublicKey = <copy public key from wg-mobile-public.key>
AllowedIPs = 10.200.200.3/32Yon koup nan nòt:
- Nan kote ki apwopriye yo ou bezwen mete liy ki soti nan dosye yo ak kle yo
- VPN mwen an ap itilize ranje entèn yo
10.200.200.0/24 - Pou ekip
PostUp/PostDownMwen gen yon koòdone rezo ekstèn wwan0, ou ka gen yon lòt (pa egzanp, eth0)
Rezo VPN la fasilman leve ak lòd sa a:
$ sudo wg-quick up wg0 Yon ti detay: kòm yon sèvè dns, mwen te itilize dnsmasq konekte nan koòdone rezo a br0, Mwen te ajoute tou aparèy wg0 nan lis aparèy ki pèmèt yo. Nan dnsmasq, sa fèt lè w ajoute yon nouvo liy ak koòdone rezo a nan dosye konfigirasyon an /etc/dnsmasq.confpa egzanp:
interface=br0
interface=wg0Epitou, mwen te ajoute yon règ iptable pou pèmèt trafik nan pò UDP ki koute (51280):
$ sudo iptables -I INPUT -p udp --dport 51820 -j ACCEPTKounye a ke tout bagay ap travay, nou ka anrejistre lansman otomatik tinèl VPN la:
$ sudo systemctl enable wg-quick@wg0.serviceKonfigirasyon kliyan laptop
Sou laptop la, kreye yon dosye konfigirasyon /etc/wireguard/wg0.conf ak menm paramèt yo:
[Interface]
Address = 10.200.200.2/24
PrivateKey = <copy private key from wg-laptop-private.key>
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 10.200.200.0/24
Endpoint = edgewalker:51820Nòt:
- Olye pou yo edgewalker, ou bezwen presize yon lame sèvè IP piblik oswa VPN
- Pa mete
AllowedIPssou10.200.200.0/24, nou sèlman itilize VPN pou jwenn aksè nan rezo entèn la. Trafik nan tout lòt adrès IP/sèvè ap kontinye ale nan chanèl ouvè "regilye". Yo pral itilize sèvè dns pre-konfigirasyon sou laptop la tou.
Pou tès ak lansman otomatik, nou itilize menm kòmandman yo wg-quick и systemd:
$ sudo wg-quick up wg0
$ sudo systemctl enable wg-quick@wg0.serviceKonfigirasyon kliyan an pou Android-telefòn
Pou telefòn Android Nou kreye yon dosye konfigirasyon ki sanble anpil (ann rele li mobile.conf):
[Interface]
Address = 10.200.200.3/24
PrivateKey = <copy private key from wg-mobile-private.key>
DNS = 10.200.200.1
[Peer]
PublicKey = <copy public key from wg-server-public.key>
AllowedIPs = 0.0.0.0/0
Endpoint = edgewalker:51820 Kontrèman ak konfigirasyon laptop la, telefòn nan ta dwe itilize sèvè VPN nou an kòm sèvè dns li (string DNS), osi byen ke pase tout trafik nan tinèl VPN la (AllowedIPs = 0.0.0.0/0).
Olye pou w kopye fichye a sou aparèy mobil ou, ou ka konvèti li nan yon kòd QR:
$ sudo apt install qrencode
$ qrencode -t ansiutf8 < mobile.confKòd QR la ap parèt nan konsole a kòm ASCII. Ou ka eskane li nan aplikasyon an. Android VPN epi konfigire tinèl VPN lan otomatikman.
Sòti
ajisteman WireGuard senpleman majik konpare ak OpenVPN.
Sous: www.habr.com
