ProHoster > ΠΠ»ΠΎΠ³ > Administrasi > Tunnel VPN langsung antarane komputer liwat panyedhiya NAT (tanpa VPS, nggunakake server STUN lan Yandex.disk)
Tunnel VPN langsung antarane komputer liwat panyedhiya NAT (tanpa VPS, nggunakake server STUN lan Yandex.disk)
Lanjutan artikel bab carane aku ngatur kanggo ngatur trowongan VPN langsung antarane loro komputer dumunung konco panyedhiya NAT. Artikel sadurunge nerangake proses ngatur sambungan kanthi bantuan pihak katelu - perantara (VPS sing disewakake minangka server STUN lan pemancar data simpul kanggo sambungan kasebut). Ing artikel iki aku bakal pitutur marang kowe carane aku ngatur tanpa VPS, nanging perantara tetep lan padha server STUN lan Yandex.Disk...
Klien STUN versi 0.97
Mbukak port 21234 karo fd 3
Mbukak port 21235 karo fd 4
Encoding pesen stun:
Encoding ChangeRequest: 0
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Ditampa pesen stun: 92 bita
MappedAddress = <IP Kula>:2885
SumberAlamat = 216.93.246.18:3478
ChangedAddress = 216.93.246.17:3479
Atribut sing ora dingerteni: 32800
Jeneng Server = Vovida.org 0.98-CPC
Ditampa pesen jinis 257 id=1
Encoding pesen stun:
Encoding ChangeRequest: 0
Babagan ngirim pesen saka len 28 menyang 216.93.246.17:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 0
Bakal ngirim pesen saka len 28 menyang <My IP>:2885
Ditampa pesen stun: 28 bita
ChangeRequest = 0
Ditampa pesen jinis 1 id=11
Encoding pesen stun:
Encoding ChangeRequest: 0
Babagan ngirim pesen saka len 28 menyang 216.93.246.17:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Ditampa pesen stun: 92 bita
MappedAddress = <IP Kula>:2885
SumberAlamat = 216.93.246.17:3479
ChangedAddress = 216.93.246.18:3478
Atribut sing ora dingerteni: 32800
Jeneng Server = Vovida.org 0.98-CPC
Ditampa pesen jinis 257 id=10
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 4
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
Encoding pesen stun:
Encoding ChangeRequest: 2
Babagan ngirim pesen saka len 28 menyang 216.93.246.18:3478
tes I = 1
tes II = 0
tes III = 0
tes I(2) = 1
punika nat = 1
dipetakan IP padha = 1
jepit rambut = 1
port pengawet = 0
Utama: Mapping Independent, Filter gumantung Port, port acak, bakal hairpin
Nilai bali yaiku 0x000006
String kanthi nilai
MappedAddress = <IP Kula>:2885
mung apa sing perlu! Iki nuduhake status saiki kanggo sambungan ing port UDP lokal 21234. Nanging iki mung setengah perang, pitakonan muncul babagan carane nransfer data iki menyang host remot lan ngatur sambungan VPN. Nggunakake protokol mail, utawa mungkin Telegram?! Ana akeh opsi lan aku mutusake kanggo nggunakake Yandex.disk, wiwit aku ketemu artikel babagan nggarap Curl liwat WebDav karo Yandex.disk. Sawise mikir babagan implementasine, aku nggawe skema ing ngisor iki:
Sinyal yen simpul siap nggawe sambungan kanthi anane file tartamtu kanthi stempel wektu ing Yandex.disk;
Yen simpul wis siyap, banjur tampa paramèter saiki saka server STUN;
Unggah setelan saiki menyang Yandex.disk;
Priksa ngarsane lan maca paramèter saka simpul remot saka file ing Yandex.disk;
Nggawe sambungan karo host remot nggunakake OpenVPN.
Praktek
Sawise mikir sethithik, njupuk pengalaman saka artikel pungkasan, aku cepet-cepet nulis naskah. Kita bakal butuh:
Salin menyang clipboard lan tempel menyang editor, contone:
# nano vpn10.sh
nuduhake login (baris 2) lan sandhi kanggo Yandex.disk (baris kaping 3).
nemtokake alamat IP internal trowongan (baris kaping 4).
nggawe skrip bisa dieksekusi:
# chmod +x vpn10.sh
mbukak skrip:
# ./vpn10.sh nZbVGBuX5dtturD
ngendi nZbVGBuX5dtturD punika ID sambungan kui kene
Ing simpul remot, tindakake padha, nemtokake alamat IP internal cocog trowongan lan ID sambungan.
Kanggo autorun skrip nalika diuripake, aku nggunakake printah "nohup /<path to the script>/vpn10.sh nZbVGBuX5dtturD > /var/log/vpn10.log 2>/dev/null &" sing ana ing file /etc/ rc.lokal
kesimpulan
Skrip bisa digunakake, dites ing Ubuntu (18.04, 19.10, 20.04) lan Debian 9. Sampeyan bisa nggunakake layanan liyane minangka pemancar, nanging kanggo pengalaman aku nggunakake Yandex.disk.
Sajrone eksperimen, ditemokake sawetara jinis panyedhiya NAT ora ngidini nggawe sambungan. Utamane saka operator seluler ing ngendi torrents diblokir.
Aku rencana kanggo nambah ing syarat-syarat:
Generasi otomatis secret.key saben-saben sampeyan miwiti, enkripsi lan nyalin menyang Yandex.disk kanggo transfer menyang simpul remot (Nggatekake versi sing dianyari)
Tugas otomatis alamat IP antarmuka
Enkripsi data sadurunge diunggah menyang Yandex.disk
Optimasi kode
Ayo ana IPv6 ing saben omah!
Dianyari! File paling anyar lan paket DEB ing kene - yandex.disk