OpenVPN u HTTPS fuq il-port 443: ta’ min huwa s-semmiegħ?
TCP u UDP 443 huma sokits separati. Li taqsam semmiegħ TCP wieħed jeħtieġ proprjetarju, u l-qsim tal-port ta’ OpenVPN huwa arranġament dejjaq, mhux trick ta’ prokura.
Żewġ servizzi jistgħu t-tnejn iwieġbu fuq il-port 443 mingħajr qatt ma jikkompetu, għax semmiegħ jiġi ddeterminat mit-trasport, l-indirizz u l-port flimkien, mhux min-numru biss. Qiegħed server web u OpenVPN fuq magna waħda, u l-unika domanda li jistħoqqilha tweġiba l-ewwel hija liema socket kull proċess jitlob mill-qalba. Ikteb dik il-lista qabel ma tedita konfigurazzjoni, u l-biċċa l-kbira tal-iżbalji «l-indirizz diġà qed jintuża» jispjegaw lilhom infushom. Kollox wara l-lista huwa għażla bejn semmiegħ UDP, socket TCP maqsum jew quddiem li jidderieġi skont il-protokoll.
Ibda bis-socket li jitlob kull proċess
Bind jirnexxi jew ifalli fuq dik it-tlieta, għalhekk żewġ daemons jaħbtu ma’ xulxin biss meta t-tliet partijiet jaqblu. Huwa għalhekk li sit web fuq TCP 443 jikkoeżisti bla limitu ma’ semmiegħ OpenVPN fuq UDP 443, u huwa għalhekk li ċ-ċaqliq ta’ wieħed minnhom għat-tieni indirizz lokali fuq l-istess host itemm ukoll id-dibattitu. Aqra s-semmiegħa ħajjin, mhux il-fajls li kellhom joħolquhom, għax include antik jew fajl unit minsija jgħix itwal mill-editjar li tiftakar li għamilt.
| Line in the listener list | What it establishes | What to do next |
|---|---|---|
| One udp row and one tcp row, each on 443 | Separate transport sockets, nothing contested | Point the VPN profile at udp and stop editing |
| A single tcp address and port listed by two processes | A real bind collision between two daemons | Move one service, or put a dispatcher in front of both |
| A proxy process owns the socket, no vpn process | The proxy accepts and has to hand off correctly | Check that its backend speaks the protocol it forwards |
Mexxi ss -lntup bħala root u aqra kull linja li ssemmi 443, inklużi d-dħuliet IPv6. Semmiegħ v6 wildcard normalment jaċċetta wkoll traffiku v4, u hekk semmiegħ li nsejt iżomm il-port okkupat wara li tbiddel il-fajl li ħsibt li kien responsabbli. Jekk isem ta’ proċess jissorprendik, dejjaq l-output b’ss -lntup 'sport = :443' qabel ma tmiss xejn.
Biddel it-tunnel għal UDP meta n-netwerk jippermetti
Semmiegħ UDP jevita l-kolliżjoni għal kollox u normalment huwa l-iqsar tiswija, għax l-ebda socket ma jinqasam u l-ebda prodott addizzjonali ma jidħol fil-passaġġ. Iżda mhuwiex b’xejn. Xi netwerks tal-klijenti jwarrbu UDP 443 mingħajr ma jibagħtu reset, għalhekk it-tunnel jieqaf jistabbilixxi ruħu minflok ma jfalli fuq bind, u l-utent jirrapporta li l-VPN hija waqfa bla ebda żball x’jaqra. Semmiegħ UDP jgħix ukoll minn restart tas-saff web, li jgħodd fuq magna li s-sit tagħha jiġi varat mill-ġdid ta’ spiss. Ipprova min-netwerk fejn joqogħdu l-utenti, għax shell fuq is-server biss jipprova li s-server jasal għalih innifsu.
Biddel it-trasport fil-konfigurazzjoni tas-server u fil-profil tal-klijent flimkien. Profil li għadu jitlob TCP se jdur fiċ-ċikli ta’ qbiz mill-ġdid kontra semmiegħ UDP biss, u dan jidher bħal ħsara tan-netwerk sakemm tqabbel iż-żewġ fajls.
Ħalli l-proċess VPN jippossjedi TCP 443 u għaddi l-bqija
Community OpenVPN fil-modalità server TCP jaqra l-ewwel bytes ta’ konnessjoni deħla u jgħaddi kull ma mhux il-protokoll tiegħu lil backend HTTPS, u għal dan hemm id-direttiva port-share. Il-backend huwa server web ordinarju b’TLS attivat, imsemmi bl-host u l-port f’dik id-direttiva u mhux b’URL.
port-share 10.0.0.5 8080
Fuq magna fejn is-sit għandu t-tieni indirizz privat, dik il-linja tibgħat traffiku li mhux VPN lejn 10.0.0.5:8080, għalhekk il-host virtwali HTTPS irid ikun marbut hemm u l-firewall irid jippermetti l-qabża lokali. Is-server web irid itemm TLS hu stess, għax il-bytes li jaslu huma l-handshake oriġinali tal-browser u xejn bejniethom ma ddekodifikahom. Idderieġi d-direttiva lejn semmiegħ HTTP sempliċi u l-browser jieħu żball ta’ metodu invalidu, li jinqara bħala sit miksur u mhux bħala backend imqiegħed ħażin. Id-direttiva teżisti biss fil-modalità server TCP, u semmiegħ UDP m’għandu l-ebda fluss x’jiġi spezzjonat.
Għax il-proċess VPN jaċċetta kull konnessjoni, l-applikazzjoni web tara t-talba mgħoddija tasal minn wieħed mill-indirizzi tal-host innifsu minflok mill-viżitatur. Kull ma jeħtieġ l-indirizz veru tal-klijent jiddependi mill-appoġġ tal-protokoll PROXY fil-backend jew minn quddiem li jżidu. Iċ-ċaqliq tal-backend għal indirizz lokali ieħor ma jġibx lura l-indirizz tal-viżitatur; dan ibiddel biss liema mill-indirizzi tal-host is-sit jirreġistra. Ikteb dik il-limitazzjoni fin-noti tal-varar qabel ma rapport tal-analitika jqajjem il-mistoqsija.
Prokura inversa hija l-għodda ħażina; router tas-saff erbgħa mhuwiex
Prokura inversa HTTP itemm TLS biex ikun jista’ jaqra t-talbiet, li jfisser li ma jistax jgħaddi fluss OpenVPN bla ma jmissu. Router tas-saff erbgħa li jgħaddi skont SNI jew spezzjoni tal-ewwel pakkett jista’ joqgħod quddiem it-tnejn, sakemm ma jtemmx is-sessjoni li l-VPN tiddependi fuqha. Iż-żewġ apparati jidhru l-istess fi diagramma u jġibu ruħhom b’mod kompletament differenti fis-socket.
Access Server kummerċjali jiġi b’tqassim tal-port tiegħu stess, u dawn ma jaqblux wieħed għal wieħed mad-direttiva tal-komunità. Identifika l-prodott u l-verżjoni qabel ma tadatta gwida miktuba għall-ieħor. Konfigurazzjoni kopjata li tiġi injorata fis-skiet hija agħar minn ebda konfigurazzjoni, għax il-lista tas-semmiegħa xorta tidher plaużibbli wara.
Ipprova s-sit web u t-tunnel bħala żewġ passaġġi separati
Tagħbija s-sit u qabbad it-tunnel, imbagħad aqra l-lista tas-semmiegħa mill-ġdid biex tara liema proċess jippossjedi 443 issa. Paġna li tgħabbi ma tipprova xejn dwar il-VPN, u tunnel li jikkonnettja ma jipprova xejn dwar is-sit, għalkemm it-tnejn jużaw l-istess numru. It-tliet kmandi hawn taħt jiċċekkjaw is-socket maqsum, il-passaġġ web u s-servizz VPN f’dak l-ordni.
ss -lntup 'sport = :443' curl -sI https://vpn.example.com/ | head -n 1 journalctl -u openvpn-server@server -n 20
Qabbel l-indirizz tal-klijent fil-log tal-aċċess tal-backend ma’ dak fil-log tal-VPN għall-istess mument. Jekk is-sit jirreġistra kull viżitatur bħala l-host innifsu, il-ġarr jaħdem u l-immaniġġjar tal-indirizz ma jaħdimx. Jekk iż-żewġ logs jibqgħu siekta, il-quddiem qatt ma għadda l-konnessjoni. Kif inhi, il-lista tas-semmiegħa tiddeċiedi min jaċċetta s-socket, u dak huwa l-fatt li għandu jiġi kkonfermat qabel ma tbiddel fajl ieħor.
Ħalli dik il-mappa tas-semmiegħa ħdejn il-konfigurazzjoni sabiex il-persuna li jmiss li tmiss 443 tkun taf liema proċess jaċċetta u fejn mar il-protokoll l-ieħor. Ikkonferma l-proprjetà wara l-bidla minflok tafda f’dak li l-editjar kellu jagħmel.