Jou houer kan op UDP 1195 luister terwyl die gasheer 1194 publiseer, en dit is korrek solank die kartering dit sê. Die nommers vorm ’n vertaaltabel: die kliënt skakel die gasheerpoort, Docker herskryf die bestemming na die houerpoort, en OpenVPN antwoord op die poort wat sy eie konfigurasie noem. ’n Wanpassing by enige van daardie skakels veroorsaak ’n stil fout wat soos ’n vuurmuur lyk. Sertifikate en syfers lê stroomaf hiervan en kan dit nie herstel nie.

Volg een pakkie van kliënt tot proses voordat jy enigiets aan die verifikasie verander.

Drie nommers, een verbinding

Die drie nommers is die afgeleë bestemming wat die kliënt gebruik, die gepubliseerde kartering op die gasheer, en die luisteraar binne die houer. Hulle hoef nie gelyk te wees nie, maar hulle moet inmekaar skakel. Gelyke nommers is ’n spesiale geval wat toevallig die algemeenste een is, en daarom is ’n wanpassing maklik om een keer te skryf en later moeilik om raak te sien.

Skryf die ketting as een reël neer voordat jy ontfout: kliëntadres en -poort, gasheerkartering, houerluisteraar, transport. ’n Fout in die ketting wys as ’n nommer wat twee keer met verskillende waardes verskyn.

LocationExample
Remote client destinationHost address, UDP 1194
Published mappingHost UDP 1194 to container UDP 1195
Container listenerOpenVPN on UDP 1195

Wat die kort sintaks werklik sê

In die kort vorm is die linkerkant die gasheerpoort en die regterkant die houerpoort, en ’n skuinsstreep-agtervoegsel kies die transport. Laat die agtervoegsel weg en Docker behandel die kartering as TCP, so ’n UDP-luisteraar agter ’n kartering sonder protokol is ’n luisteraar wat niemand kan bereik nie. Daardie standaard is gedokumenteer en verras steeds mense wat die nommers laat klop het en dit klaar genoem het.

Die lang vorm spel die bindadres en protokol eksplisiet vas, wat die ekstra reëls werd is vir enigiets wat aan ’n netwerk blootgestel is. Lees die gepubliseerde kartering terug eerder as om die lêer te vertrou wat dit geskep het.

ports:
  - 1194:1195/udp

Waar die pakkie kan stop

’n Versoek kan voor Docker, by Docker of by die luisteraar laat val word. Voor Docker kan daar ’n wolk-vuurmuur of ’n roeteerder wees wat sy eie deurstuur doen, en daardie toestel het die gasheerkant-poort en die regte transport nodig. Binne Docker stuur ’n kartering vir die verkeerde houerpoort na ’n geslote sok.

Dan die luisteraar: OpenVPN se konfigurasie noem ’n poort en protokol, en ’n kliënt wat binne die houer op ’n ander een aankom, bereik niks. TCP-toetsing van ’n UDP-diens bewys niks in enige van hierdie stadiums nie, so gebruik die transport wat die kliënt gaan gebruik.

Bindadresse bepaal bereikbaarheid

’n Gepubliseerde kartering wat aan loopback gebind is, is net vanaf die gasheer bereikbaar, terwyl een wat aan alle koppelvlakke gebind is, bereikbaar is waar die vuurmuur dit toelaat. Dié twee lyk identies in ’n Compose-lêer wat die adres weglaat, en die Docker-standaard is die breë een.

Besluit watter blootstelling die ontplooiing bedoel, en skryf dit dan eksplisiet. ’n Interne toets wat oor loopback verbind en ’n afgeleë kliënt wat nie kan verbind nie, kan albei akkurate beskrywings van dieselfde houer wees.

Lees die lopende toestand

Ondersoek die lopende houer se effektiewe kartering en die luisteraar in sy netwerknaamruimte. ’n Compose-lêer kan gewysig gewees het nadat die houer begin het, beeldmetadata kan ’n poort verklaar sonder om dit te publiseer, en ’n tweede houer kan die gasheerpoort al hou. Om ’n poort in ’n beeld te verklaar is nie om dit te publiseer nie, en nie een van die twee is dieselfde as om te luister nie.

Drie verskillende toestande, drie verskillende opdragte, en net die laaste een betrek OpenVPN.

Nadat die kartering reg is

Sodra die pakkie OpenVPN bereik, is sy logboek die plek om oor TLS en verifikasie te lees. Om sertifikate te hergenereer om ’n pakkie reg te maak wat nooit aangekom het nie, is vermorste werk wat ’n tweede veranderlike byvoeg. Hou die karteringsnota langs die kliëntprofiel sodat die volgende persoon een reël lees eerder as om al drie nommers weer te ontdek. Een pakkie-opname aan die gasheerkant beslis watter van die drie skakels verkeerd is, en dit kos minder as ’n sertifikaathernuwing.

Brugpublikasie is die geval wat hier beskryf word. Gasheernetwerk en geroteerde houeradresse slaan die vertaling oor, so dieselfde nommers beteken iets anders in daardie ontwerpe.

Verwante artikels