OpenVPN konektiĝas sed nenio fluas: trovu la tavolon, kie la paketo perdiĝas
Konektita tunelo sen trafiko havas almenaŭ kvin kaŭzojn. Pruvu la aŭskultanton, kaptu la eksteran paketon, kaj poste lasu la nombrilojn aŭ spuron nomi la regulon.
OpenVPN diras konektita kaj neniu trafiko moviĝas, frazo kiu kovras almenaŭ kvin senrilatajn paneojn. Redakti fajroŝirmilajn regulojn antaŭ ol vi scias, kiu tavolo malsukcesas, multobligas la nekonatojn kaj lasas al la sekva inĝeniero kaoson. Laboru anstataŭe de la procezo eksteren, ĉar ĉiu paŝo sube aŭ purigas unu etapon aŭ mallarĝigas, kie la paketo mortas. La ordo gravas ĉi tie: kaptaĵo prenita antaŭ ol vi scias, kiu adreso estas ligita, pruvos ion, nur ne tion, kion vi bezonas.
La ingo estas aŭ ligita aŭ ne
Servo, kiu raportas sin aktiva, povas ankoraŭ esti ligita al adreso aŭ transporto, kiun vi neniam intencis. Demandu la ingon mem: ss -lunp listigas UDP-aŭskultantojn kaj ss -ltnp TCP, kaj la kolumno inda legi estas la loka adreso, ne la stato.
Malplena respondo kutime signifas unu el tri aferoj: la procezo eliris post starto, ĝi ŝargis alian agordan dosieron, aŭ ĝi aŭskultas sur alia adreso ol tiu, al kiu oni alvokas.
ss -lunp | grep 1194
ss -ltnp | grep 1194
Direktivo local fortikigas la aŭskultanton al unu adreso, do kliento celanta aliloken sur la sama gastiganto estas rifuzata, dum la servo de ekstere ankoraŭ aspektas sana. Kaza nomo ankaŭ povas montri al dosiero, kiun vi neniam redaktis, kio okazas sur gastigantoj funkciigantaj du profilojn apude.
Kaptu la eksteran paketon, ne la tunelon
Filtru laŭ la fizika interfaco kaj la reala pordo, kun via propra interfaco anstataŭigita: tcpdump -ni eth0 udp port 1194. Elirantaj paketoj sen io revenanta montras al tio, kio sidas supre: provizanta filtrado, NAT-aparato aŭ fora adreso, kiu ne estas tiu, kiun vi pensas. Silento en ambaŭ direktoj montras al klienta enkursigo aŭ loka fajroŝirmilo. Respondoj, kiuj alvenas sen progreso de la tunelo, montras al la rega kanalo, do malkongruo de ŝlosilo aŭ ĉifro, ne al filtrado.
Kaptu ambaŭ direktojn kaj tenu la dosieron mallonga. Longa kaptaĵo entombigas la interesajn tri sekundojn, kaj la respondo preskaŭ ĉiam kuŝas en la unua interŝanĝo.
Unue nombriloj, spuro nur kiam ili mensogas
Komencu per la nombriloj, ĉar ili kostas nenion. Aŭ nft list ruleset aŭ iptables -L -n -v respondas la solan demandon, kiu gravas ĉi tie: ĉu la regulo kongruis? La ordo decidas la rezulton, ĉar la unua kongruo venkas, tial larĝa DROP antaŭ posta ACCEPT lasas tiun ACCEPT morta kaj tial aldoni regulon tiel malofte riparas ion.
Posedo ankaŭ faligas homojn. La kerno atribuas loke generitajn paketojn al la procezo, kiu malfermis la ingon, kaj OpenVPN kutime funkcias kiel root, do regulo ŝlosita al ordinara uzanto-ID neniam vidas la trafikon de la tunelo mem. Kontrolu la posedantan UID antaŭ ol decidi, ke la regulo estas malĝusta.
Nur kiam la nombriloj restas ambiguaj, protokolo indas la bruon, kaj eĉ tiam nur por mallarĝa tranĉaĵo: iptables-regulo, kiu limigas rapidecon kaj antaŭmetas prefikson al siaj protokolaj linioj, aŭ nftables-regulo portanta meta nftrace set 1 kun nft monitor trace funkcianta. Spuro nomas la ĉenon kaj la regulon, kiu akceptis aŭ forĵetis la paketon. Forigu ambaŭ poste kaj tenu la protokoladon de la utilaĵo ekstere.
Kontrolu ankaŭ la transporton. Fajroŝirmila servo limigita al TCP diras nenion pri UDP-aŭskultanto sur tiu numero, do regulo, kiu legiĝas ĝuste, povas ankoraŭ forĵeti ĉiun paketon.
Enkursigo kaj la vojo reen
Akceptita paketo, kiu tamen malaperas, bezonas ekzamenon de sia celvojo. ip route get raportas la itineron elektitan por unu adreso, kaj inversvoja filtrado povas forĵeti respondon, kiu alvenas tra interfaco, kiun la ĉefa tabelo neniam elektus. La simptomo aspektas precize kiel fajroŝirmila forĵeto, tial ĉi tiu kontrolo venas antaŭ plua NAT-regulo.
Sur kluzo, ekzamenu la plusendadon kaj la ĉenon forward anstataŭ la ĉenon input. Poste konfirmu, ke la fora flanko scias, kiel atingi la fontan adreson, ĉar funkcianta elira vojo sen io revenanta estas silento en ambaŭ kazoj.
Kion la noto devas diri
Por ĉiu ŝanĝo, notu la etapon, kiun vi testis, la pruvon, kiun vi legis, kaj la nombrilan valoron ambaŭflanke de ĝi. Tiu noto estas tio, kio igas "ĝi nun funkcias" postvivipova ĉe la sekva revizio.
Du mallongigoj tenas la noton honesta. Paketo, kiu neniam forlasis la gastiganton, ne povis esti forĵetita de regulo aliloke, kiom ajn konvinka aspektas la agordo de la fora flanko. Paketo, kiu foriris kaj revenis, movas la demandon super la reta tavolo, kie la nombriloj de la fajroŝirmilo jam havas nenion por diri al vi.