Pam mae rheol porthladd ffynhonnell yn torri un o'ch llwybrau SSH
Nid yw cyfatebiaeth "sport 22" yn dweud pa fynedfa SSH y mae ateb yn perthyn iddi. Cyfyngwch y rheol polisi i'r llif rheoli yn lle un tabl WAN yn unig.
Dwy fynedfa reoli ar un gwesteiwr, un porthladd gwasanaeth, a rheol polisi a oedd i fod i helpu'r ddwy. Mae'r rheol yn cyfateb i borthladd ffynhonnell 22, yn anfon yr ymchwil i dabl nad yw'n gwybod ond y rhagosodiad WAN, ac mae'r fynedfa VPN yn stopio ateb mewngofnodion newydd tra bo'r fynedfa uniongyrchol yn dal i weithio. Nid oes dim o hynny'n ddirgel unwaith y darllenir y detholydd yn iawn. Mae porthladd ffynhonnell yn nodi gwasanaeth, nid y llwybr y daeth cysylltiad i mewn arno.
Dwy fynedfa, un porthladd gwasanaeth
Mae gan y gwesteiwr gyfeiriad ar ochr LAN a chyfeiriad VPN, ac mae sshd yn gwrando ar y ddau. Felly mae sesiwn uniongyrchol a sesiwn dwnel yn rhannu'r porthladd gwasanaeth ac yn gwahaniaethu dim ond yn y cyfeiriad lleol sy'n derbyn y cysylltiad.
Mae'r gwahaniaeth hwnnw'n ddigon i ddewis llwybr ateb, a dyma'n union y gwahaniaeth y mae rheol yn seiliedig ar borthladd yn ei daflu. Mae'r ddwy sesiwn yn cynhyrchu atebion y mae eu porthladd ffynhonnell yn 22, felly ni all rheol sy'n cyfateb i'r porthladd hwnnw eu gwahanu. Mae'n anfon y ddau ymchwil i'r un tabl, ac mae un ohonynt yn derbyn ateb nad yw'n ffitio. Yr ateb yw cyfateb y priodwedd sy'n gwahaniaethu mewn gwirionedd.
Byddai rhoi ei borthladd ei hun i bob mynedfa yn gweithio hefyd, ac mae trin hynny fel gofyniad yn ddewis dylunio yn hytrach na nodwedd o SSH.
Darllenwch y rheol, yna'r tabl
Mae rheol polisi yn ddetholydd trefnus, a'r un gyntaf sy'n dychwelyd ateb defnyddiadwy sy'n diweddu'r ymchwil. Darllenwch y rhestr mewn trefn a nodwch pa reol all ennill.
Yna darllenwch y tabl y mae'r rheol honno'n pwyntio ato, oherwydd nid yw rheol sy'n datrys yn llwyddiannus yn rheol sy'n datrys yn ddefnyddiol. Mae tabl sy'n cynnwys dim ond llwybr rhagosodedig yn anfon yr ateb o VPN allan drwy'r rhyngwyneb WAN. Ni ymgynghorir byth â llwybr mwy penodol mewn tabl diweddarach, a dyna pam nad yw ychwanegu ail dabl mor aml yn newid dim. Y tabl a ddewiswyd yw'r peth i'w archwilio.
ip -4 rule show
ip route show table 100
ip route show table main
Mae'r ddau allbwn hynny gyda'i gilydd yn esbonio'r canlyniad; mae unrhyw un ar ei ben ei hun yn gwahodd casgliad anghywir.
Cyfyngwch y rheol i'r llif rydych yn ei olygu
Y briodwedd sy'n gwahanu'r ddwy fynedfa yw'r cyfeiriad ffynhonnell lleol. Mae rheol sy'n cyfateb i'r cyfeiriad hwnnw'n anfon y sesiynau dwnel yn unig i'r tabl preifat ac yn gadael sesiynau uniongyrchol ar y prif dabl.
Rhaid paru'r rheol honno â thabl sy'n cynnwys y llwybr preifat a'r llwybr dychwelyd ar gyfer y isrwydwaith honno. Cyfyngwch y ddau i draffig rheoli yn hytrach nag i bob gwasanaeth ar y gwesteiwr. Bydd rheol sy'n dal yr holl draffig o'r cyfeiriad hwnnw hefyd yn ailgyfeirio unrhyw beth arall y mae'r gwesteiwr yn ei anfon oddi yno. Mae cul yn curo cyfrwys yma, oherwydd rhaid i'r person nesaf ei ddarllen.
sudo ip rule add from 10.90.0.1 lookup 100 priority 100
sudo ip route add 10.90.0.0/24 dev wg0 table 100
ip route get 10.90.5.20 from 10.90.0.1
Os cyfieithir y ddwy fynedfa i un cyfeiriad lleol, mae'r gwahaniaeth hwnnw'n diflannu ac mae'r dyluniad angen cyflwr sy'n ymwybodol o gysylltiad yn lle hynny.
Cadwch y gwrandawr, y caniatâd a'r dewis ateb ar wahân
Rhaid i dri pheth ar wahân fod yn wir cyn i sesiwn weithio: mae'r cyfeiriad yn bodoli, mae'r gwasanaeth yn gwrando arno, ac mae'r ateb yn dod o hyd i'w ffordd yn ôl. Dim ond y trydydd y mae newid llwybr yn ei drwsio.
Mae cyfluniad y gwrandawr yn ffeil ei hun ac yn ail-lwytho ei hun, ac mae sawl cyfeiriad gwrando yn normal. Mae dilysu yn drydedd penderfyniad eto, ac nid yw eithriad llwybro yn rhoi mynediad i neb. Cadwch ddilysu allwedd y gwesteiwr, dilysu'r cyfrif a chyfyngiadau ffynhonnell ar y ddwy fynedfa, a gwrthwynebwch y chwant i wanhau rheolaethau eraill y dwnel fel y bo un llwybr rheoli yn gweithio.
Cadwch sianel adfer nad yw'n dibynnu ar y llwybr rydych yn ei newid, oherwydd mae camgymeriad yma yn cloi allan y trwsio ei hun.
Profwch ef gyda sesiwn newydd, nid un hen
Nid yw terfynell sefydledig yn profi dim, gan iddi gael ei derbyn cyn y newid. Agorwch sesiwn ffres drwy bob mynedfa a fwriadwyd.
ss -ltnp | grep ':22'
sudo sshd -T | grep -i listenaddress
ssh -v [email protected] true
sudo journalctl -u ssh -n 30
Yna ailadroddwch ailgysylltu'r VPN a rhoi cynnig arni eto, oherwydd nid yw llwybr sy'n goroesi ailgysylltiad yr un peth ag un a ychwanegwyd at dabl y mae'r ailgysylltiad yn ei glirio. Arsylwch y ffynonellau a wrthodwyd ar wahân i'r rhai a ganiatawyd, fel nad yw ymgais sydd wedi'i rhwystro yn cuddio y tu ôl i sesiwn sy'n gweithio. Cadwch y cyfeiriad lleol, y rheol a'r tabl wrth ymyl y canlyniad. Os rhannwch y porthladdoedd yn lle hynny, cofnodwch hynny fel penderfyniad gweithredu yn hytrach nag fel terfyn SSH.