Mae dwy fethiant yn parhau i ddod o’r un math o westeiwr. Yn y gyntaf, mae cleientiaid yn dilysu ac yna’n cyrraedd dim byd y tu hwnt i’r tiwnel. Yn yr ail, mae’r VPN yn codi ac mae gwefan y gweinydd ei hun yn stopio ateb, sef yr un fwyaf brawychus oherwydd ei bod yn edrych fel difrod ochr. Ar VPS sy’n seiliedig ar gynhwysydd mae’r ddau fel arfer yn olrhain yn ôl i’r un rhestr fer o wiriadau, ac mae’r drefn yn bwysig: dyfais yn gyntaf, cyfieithu’n ail, cwmpas yn drydydd.

Cadarnhewch y gall y cynhwysydd greu dyfais tun

Nid oes dim arall yn bwysig os na all y rhyngwyneb tiwnel fodoli. Gwiriwch fod /dev/net/tun yn bresennol a bod creu dyfais brawf yn llwyddo, oherwydd mae llawer o ddarparwyr yn analluogi tun yng nghynwysyddion yn ddiofyn. Nid oes unrhyw faint o waith firewall yn gwneud iawn am ddyfais na chafodd ei chreu erioed.

Os yw’r ddyfais ar goll, dim ond y gwesteiwr neu’r darparwr all ei galluogi. Mae cynllun gwahanol yn aml yn rhatach na llinyn cymorth agored sy’n para wythnos. Cadarnhewch hyn cyn i chi ddarllen un llinell o log OpenVPN. Fel arall byddwch yn treulio’r noson yn tiwnio rheolau na fydd byth yn gweld pecyn.

Penderfynwch beth mae MASQUERADE yn ei wneud ar y rhyngwyneb hwn

Ar beiriant rhithwir cyffredin y rheol allan arferol yw POSTROUTING MASQUERADE o’r prif ryngwyneb. Mewn cynhwysydd OpenVZ y ddyfais weladwy yn aml yw venet0, rhyngwyneb rhithwir a reolir gan y gwesteiwr yn hytrach na NIC a lwybrwyd, ac nid yw MASQUERADE bob amser yn ymddwyn yno fel y mae tiwtorialau’n tybio.

Y ffurf weithredol yw cyfieithu penodol i’r cyfeiriad y mae cleientiaid eisoes yn ei gyrraedd, gyda chaniatáu anfon yn y ddau gyfeiriad. Mae amnewid y pwll o ffurfweddiad y gweinydd yr un mor bwysig ag amnewid y cyfeiriad. Darllenwch bob llinell cyn ei phastio.

iptables -t nat -A POSTROUTING -o venet0 -s 10.8.0.0/24 -j SNAT --to-source 203.0.113.10
iptables -A FORWARD -i tun0 -j ACCEPT
iptables -A FORWARD -o tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

Heb y rheolau anfon mae’r cyfieithu’n digwydd o hyd ac mae’r cnewyllyn yn gwrthod anfon o hyd. Mae’r cyfuniad hwnnw’n creu’r cyflwr dryslyd lle mae rhifyddion ar y rheol NAT yn codi tra nad yw’r cleient yn derbyn dim. Mae angen i’r ddwy linell FORWARD hefyd fod o flaen unrhyw reol gollwng eang yn yr un gadwyn. Mae trefn yn rhan o’r ffurfweddiad, nid manylyn gweithredu.

Cwmpaswch y rheol i un pwll ac un rhyngwyneb

Mae gan yr ail symptom achos gwahanol: rheol POSTROUTING heb gyfyngiad ffynhonnell na chyfyngiad allbwn. Mae rheol o’r fath yn ailysgrifennu pob pecyn sy’n gadael y gwesteiwr.

Mae gwasanaethau sy’n dibynnu ar y ffynhonnell wreiddiol wedyn yn camymddwyn. Gall gweinydd gwe y tu ôl i brocsi lleol stopio ateb, ac nid yw ei ailgychwyn yn newid dim oherwydd bod y rheol yn dal yn y llwybr. Mae traffig y mae’r gwesteiwr yn ei anfon i’w gyfeiriad cyhoeddus ei hun hefyd yn cael ei effeithio, a dyna pam y gall y methiant edrych fel problem DNS neu dystysgrif yn hytrach nag un firewall. Mae’n sicr bod y rheol wedi’i hychwanegu i drwsio’r symptom cyntaf.

Y datrysiad yw culhau’r cyfatebiaeth i bwll y tiwnel a’r rhyngwyneb allan, yna ychwanegu un rheol fesul pwll yn lle lledaenu un rheol i gynnwys sawl un.

Gwnewch y rheolau’n barhaus a darganfod pwy arall sy’n berchen arnynt

Mae rheolau a ychwanegwyd â llaw yn diflannu ar ailgychwyn, felly cadwch nhw gyda iptables-save neu eu rheoli drwy netfilter-persistent lle mae wedi’i osod. Cadarnhewch fod yr adferiad yn rhedeg cyn i OpenVPN ddechrau. Yna ailgychwynwch unwaith yn fwriadol yn lle darganfod y bwlch yn ystod digwyddiad.

Ar westeiwr cynwysyddion, cadarnhewch hefyd fod y ffeil parhaol yn byw mewn storfa gynhwysydd y gellir ei hysgrifennu ac nad yw’r darparwr yn disodli hidlo wrth gychwyn. Mae rhai platfformau’n rheoli polisi y tu allan i’r cynhwysydd, lle mae rheolau lleol naill ai’n cael eu hanwybyddu neu’n ymladd â rhai’r gwesteiwr ei hun.

Gwiriwch gyda rhifyddion ac un fflŵ a ddaliwyd

O gleient cysylltiedig, gwiriwch y cyfeiriad cyhoeddus y mae gwasanaeth allanol yn ei adrodd. Os yw’n cyfateb i gyfeiriad y gweinydd, mae’r cyfieithu’n gweithio; os nad yw, mae’r pecyn yn gadael ar lwybr arall neu ddim yn gadael o gwbl. Yna profwch wasanaeth a gynhelir ar y gweinydd a gwasanaeth ar y rhyngrwyd cyhoeddus, oherwydd maent yn cymryd llwybrau gwahanol drwy’r un set rheolau.

Ar y gweinydd, darllenwch y rhifyddion pecynnau ar y rheolau NAT a FORWARD gyda iptables -t nat -L -v -n a gwyliwch un fflŵ mewn dal. Os yw cyfeiriad y cleient yn ymddangos yn y dal ac nad oes ateb yn dilyn, mae’r bwlch ar y llwybr dychwelyd neu yn hidlo’r darparwr, nid ym mhroffil y cleient. Cymharwch y ffynhonnell a ddaliwyd â’r cyfeiriad y mae’r rheol yn cyfieithu iddo, oherwydd mae anghysondeb yn golygu bod rheol arall wedi cyfateb yn gyntaf. Mae un fflŵ a arsylwyd yn setlo mwy na thudalen o ddarllen ffurfweddiad.

Cadwch y pwll, y cyfeiriad a gyfieithwyd ac enw’r rhyngwyneb gyda’i gilydd yn y cofnod newid. Mae rheol sy’n gywir ar gyfer un pwll yn cyfieithu’r nesaf yn anghywir.

Erthyglau cysylltiedig