strongSwan restas malsupre post restartigo de peer: rehavigi unu tunelon
Forlasu la restartigon de la demono. Metu la iniciaton kaj DPD sur la konekton, kiu devas reveni, poste kontrolu laŭ la nomo kaj pruvu la servon, ne la demonon.
La fora enirejo restartigas, revenas ene de minuto, kaj la loka strongSwan-demono daŭre funkcias dum la tunelo restas malsupre. Cron-tasko, kiu serĉas ESTABLISHED kaj restartigas la demonon, finfine kovros tion, kaj ĝi ankaŭ interrompos ĉiun nerilatan tunelon sur la maŝino, dum ĝi eble maltrafos tiun, kiu malsukcesis. Rehavigo apartenas al la konekto, kiu devas reveni, esprimita per agordoj, kiuj postvivas reŝargon. Ĉi tiu runbook starigas tion por unu konekto kaj pruvas la rezulton laŭ la nomo.
Forlasu la tutmondan restartigon, konservu ĝiajn pruvojn
Restartigo de demono portas du konkretajn difektojn: ĝi detruas la staton de ĉiu konekto, kaj ĝi diras al vi nenion pri tio, kiu okazaĵo fakte malsukcesis. La statusteksto, kiun vi serĉis, eble venis de alia konekto, dum la bezonata child sidis senokupa ĉar nenio ekigis ĝin.
Legu la ŝargitajn konektojn kaj la aktivajn asociojn antaŭ ol ŝanĝi ion ajn, por ke vi havu bildon antaŭe, kun kiu kompari post la reveno de la peer.
swanctl --list-conns
swanctl --list-sas
Metu iniciaton kaj ripetojn sur la revenantan konekton
En swanctl.conf-aranĝo ĉi tiuj agordoj loĝas je la nivelo de konekto kaj child, ne en tutmonda politiko. La suba fragmento estas ekzemplo el la flanko de la inicianto, kiu supozas, ke proponoj, aŭtentigo kaj selektiloj jam estas ĝustaj.
connections {
branch {
keyingtries = 0
dpd_delay = 30s
children {
private-lan {
start_action = trap|start
dpd_action = restart
}
}
}
}
start_action decidas, kio okazas kiam la child estas ŝargata: start iniciatas tuj, dum trap instalas politikon, kiu ekigas iniciaton kiam aperas kongrua trafiko. Skribi trap|start postulas strongSwan 5.9.6 aŭ pli novan, do kontrolu la version antaŭ ol kopii la linion. dpd_action=restart petas novan intertraktadon, kiam la peer estas deklarita morta, kaj keyingtries=0 je konekta nivelo permesas pliajn provojn ĝis sukceso aŭ permanenta eraro. Sub IKEv2 dpd_timeout havas neniun efikon entute, ĉar ordinara reelsendo decidas, kiam la peer ne respondas.
La prokrasto en tiu ekzemplo estas deirpunkto, ne universala limdato. Elektu ĝin laŭ tio, kiom longe daŭras la restartigo de la peer kaj kiom da reelsendo vi pretas elteni.
Sciu, de kiu okazaĵo vi rehavigas
Tri paneoj aspektas identaj sur panelo kaj postulas malsamajn agordojn. Komenca konekto, kiu neniam leviĝis, estas problemo de agordo aŭ atingeblo. Peer, kiu ĉesis respondi, estas la kazo DPD. Child, kiun la peer eksplicite fermis, estas politika okazaĵo kun propra close_action, kiun DPD neniam observas. Legi la protokolon ĉirkaŭ la interrompo diras al vi, kiun el la tri vi havas, kaj la respondo ŝanĝas la riparon.
Ne aldonu agreseman re-iniciaton al konekto, kiun administrantoj intence fermas por bontenado, alie la tunelo reaperas meze de la fenestro. Por laŭpeta dezajno sufiĉas retenita trap, ĉar kongrua trafiko restarigas la child sen iu ajn tempigilo.
Kontrolu laŭ la nomo, ne laŭ la demona stato
Legu la konekton kaj ĝian child laŭ la nomo dum la peer estas ankoraŭ malsupre, poste denove kiam ĝi revenos; la diferenco inter tiuj du eligoj estas la pruvo.
swanctl --initiate --child private-lan
swanctl --terminate --ike branch
Poste konfirmu la servon anstataŭ la asocion. Freŝa sekureca asocio de child plus sukcesa peto al la privata celloko malantaŭ ĝi estas tiu paro de faktoj, kiu gravas, kaj funkcianta demono kun sana nerilata tunelo pruvas nek unu nek la alian.
Se la child neniam iniciatas, kontrolu ĉu la testa trafiko precize kongruas kun la agorditaj selektiloj, inkluzive protokolon kaj pordon. Se ĝi iniciatas kaj malsukcesas, legu la aŭtentigan aŭ proponan eraron anstataŭ kaŝi ĝin malantaŭ senfina buklo, ĉar keyingtries=0 ĝoje ripetos permanentan malakcepton por ĉiam.
Ŝargu la ŝanĝon en fenestro kaj retestu
Reŝargo estas pli sekura ol restartigi la demonon, kaj tamen ĝi ne estas senpaga: anstataŭigi aŭ malŝargi child povas fermi komencitan asocion aŭ faligi ĝian trap.
Ŝargu dum bontenada fenestro, konservu la antaŭan dosieron kaj konfirmu, ke la konekto aperas kun la agordoj, kiujn vi intencis, ne kun defaŭltoj.
swanctl --load-conns
swanctl --list-conns
Rulumu reen restarigante la antaŭan dosieron kaj ŝargante ĝin denove, poste ripetu la samajn du komandojn. Tunelo, kiu revenas nur post demona restartigo, ne estas riparita, ĝi estas restarigita.