Tunneli pystyssä, ei internetiä: mihin välitys pysähtyy
Todennus ja toimiva tunneli eivät tarkoita internet-yhteyttä. Seuraa yhtä pyyntöä lähdeosoitteen, välityksen ja vastausreitin läpi.
Asiakas yhdistää, tunneli kuljettaa pingit yhdyskäytävälle, eikä mikään sen takana vastaa. Tämä tila on normaali yhdyskäytävälle, joka oli aina tarkoitettu vain pääsyyn suojattuihin verkkoihin, ja se on vika yhdyskäytävälle, jota mainostetaan täystunnelin ulostulona. Vahvista ennen sääntöjen muuttamista, mitä palvelua luvattiin. Seuraa sitten yhtä julkista pyyntöä neljän paikan läpi, joihin se voi pysähtyä. Yksi pyyntö ja yksi pakettikaappaus ratkaisevat enemmän kuin sivu arvailuja.
Vahvista, oliko internet-ulostulo koskaan suunnitelma
Jaetun tunnelin profiili reitittää VPN:ään vain suojatut aliverkot, joten julkinen selailu jatkuu paikallisen linkin kautta eikä kosketa yhdyskäytävää. Täystunnelin profiili asentaa tunneliin oletusreitin, jolloin yhdyskäytävä vastaa koko reitistä. Molemmat ovat hyväksyttäviä suunnitelmia, ja niiden sekoittaminen tuottaa vikaraportin sinne, missä vikaa ei ole. Lue asiakkaan ilmoittamat reitit ennen muun testaamista, sillä reititystaulukko vastaa kysymykseen, jonka tiketti yleensä esittää väärin.
Se, mitä asiakas asentaa, ei ole aina se, mitä profiili tarkoittaa. Työnnetyn reitin voi ohittaa paikallinen reitti, jonka metriikka on pienempi, ja asiakas, joka pitää LAN-reittinsä lisätessään oletusreitin, käyttäytyy kuin jaettu tunneli kyseisessä aliverkossa.
Seuraa yhtä julkista pyyntöä
Valitse yksi kohde ja seuraa sitä asiakkaasta ulospäin. Tarkista asiakkaasta, valitseeko paketti todella tunnelin ja mitä paikallista osoitetta se käyttää lähteenä. Tarkista sitten yhdyskäytävä: saapuuko paketti ja poistuuko se julkisesta rajapinnasta. Jokainen näistä vastauksista poistaa kokonaisen syyluokan.
ip route get 1.1.1.1
ip -4 addr show tun0
conntrack -L | grep 1.1.1.1
tcpdump -ni any host 1.1.1.1
Jos yhdyskäytävä ei koskaan näe pakettia, asiakkaan reitti tai tunnelin valinta on väärä. Jos se saapuu eikä lähde, ongelma on yhdyskäytävässä, ja kolme jäljellä olevaa tarkistusta pätevät.
Tarkista välitys, reitti ja käännös
strongSwanin mukana tuleva välitysohje pätee minkä tahansa tunnelityypin yhdyskäytävään: ytimelle on sallittava pakettien siirtäminen rajapintojen välillä, ja käyttökelpoisen reitin on osoitettava internettiin. Palomuurikäytännön on sitten sallittava liikenne, ja lähdeosoitteen on oltava sellainen, johon julkinen puoli voi vastata. Internetiin muuttamattomana välitetty yksityinen asiakasosoite ei koskaan saa vastausta.
sysctl net.ipv4.ip_forward
ip route get 1.1.1.1
nft list ruleset | grep -A6 forward
sysctl net.ipv4.conf.all.rp_filter
Lähdeosoitteen käännös on tavallinen puuttuva osa. Sen avulla yhdyskäytävä kirjoittaa asiakkaan lähteen julkiseksi osoitteekseen ja seuraa virtaa; ilman sitä vastauksella ei ole minne mennä. Pilvialustat lisäävät toisen rajan, jossa instanssin reititystaulukko tai suojausryhmä voi pudottaa liikennettä, jonka vieraan palomuuri sallii. Tämä raja on helppo jättää huomaamatta, koska vierasjärjestelmä näyttää sisältäpäin oikein konfiguroidulta.
Käänteisen reitin suodatus epäsymmetrisessä kokoonpanossa voi myös hylätä kelvollisia paketteja. Lue kyseisen säännön laskuri sen sijaan, että olettaisit sen olevan kunnossa, sillä julkinen rajapinnan tiukka asetus hylkii liikennettä, joka saapuu eri reittiä kuin reititystaulukko ennustaa.
Vastausreitti ja nimipalvelin ovat kaksi eri vastausta
Tarkkaile myös vastausta, älä vain pyyntöä. Jos pyyntö lähtee käännettynä ja vastaus palaa käännettyyn virtaan, välitys toimii, vaikka sovellus yhä epäonnistuu, ja seuraava tutkinta kuuluu sovellukselle tai DNS:lle.
Sivusto, joka palauttaa HTTP-virheen, on todiste siitä, että välitys internettiin toimii. Nimi, joka ei ratkea, vaikka pääsy osoitteella toimii, on nimipalvelimen ongelma, ei NAT:n.
Testaa kapean korjauksen jälkeen asiakas uudelleen sekä jokainen tarkoituksella rajoitettu yksityinen resurssi. Internet-pääsyn myöntäminen ei saa hiljaa laajentaa pääsyä kaikkiin yhdyskäytävään liitettyihin verkkoihin.