O fi peer kún /etc/wireguard/wg0.conf, o ṣe systemctl restart wg-quick@wg0, peer sì pòó fáìlì nígbà tí o bá wo ẹ̀ lẹ́ẹ̀kan sí i. Kò sí ohun tí ó ba ohunkóhun jẹ́. Ìpadàbẹ̀rẹ̀ jẹ́ ìdáwọ́ dúró tí ìbẹ̀rẹ̀ ń tẹ̀lé, ìgbésẹ̀ ìdáwọ́ dúró sì lè kọ ipò ìṣiṣẹ́ ìsinsìnyí sórí fáìlì tí o ṣẹ̀ṣẹ̀ ṣàtúnṣe. Ètò tí ó ṣe pàtàkì ń gbé nínú fáìlì kan náà tí o ń ṣàtúnṣe, ìyẹn sì ni ó mú kí ìyípo yìí dàrú tó ní àkókò àkọ́kọ́ tí o bá pàdé rẹ̀.

Ipò méjì, fáìlì kan àti ìfipamọ́ ní àkókò pípa

Ipò ìṣiṣẹ́ WireGuard àti fáìlì ìṣètò wg-quick ní ìsopọ̀ ṣùgbọ́n wọ́n yàtọ̀. Fáìlì jẹ́ ìwọlé: wg-quick ka á, ó dá interface, ó ṣètò àwọn àdírẹ́sì àti ọ̀nà, ó sì ṣètò àwọn peer. Ẹ̀rọ kernel ni ohun alààyè, àwọn ìyípadà ìpele kéré tí a ṣe pẹ̀lú wg kì í kọ ara wọn padà.

Àyàfi ní ọ̀nà kan. Nígbà tí SaveConfig = true bá farahàn nínú apá interface, wg-quick ń fi ìṣètò alààyè pamọ́ sínú fáìlì gẹ́gẹ́ bí apá kan ti mímú interface sọ̀ kalẹ̀. Ìwé ìtọ́nisọ́nà wg-quick kìlọ̀ nípa èyí gan-an: àwọn ìyípadà tí a ṣe sí fáìlì nígbà tí interface ń ṣiṣẹ́ lè jẹ́ kíkọ sórí nígbà tí a bá yọ ọ́ kúrò. Èyí jẹ́ ìfipamọ́ ní àkókò pípa, kì í ṣe aago ẹ̀yìn, nítorí náà ó ń ṣiṣẹ́ nígbà tí ohun kan bá dá interface dúró nìkan.

ActionWhat it writesWhen it surprises you
wg set on a live interfaceKernel state onlyAfter reboot, when the file was never updated
wg-quick down with SaveConfigLive state into the fileRight after you edited the file
wg syncconfKernel state onlyNever; it does not touch the file
wg-quick upKernel state from the fileIf the file is stale, you get the old tunnel

Ka tábìlì gẹ́gẹ́ bí ìkìlọ̀ nípa ìtẹ̀lé. Gbogbo àdánù àjálù nínú ẹ̀ka yìí wá láti inú àtúnṣe tí ó ṣẹlẹ̀ kí ìfipamọ́ tó wáyé, kì í ṣe lẹ́yìn rẹ̀.

Dá dúró kọ́kọ́, ṣàtúnṣe ní ẹ̀kejì, bẹ̀rẹ̀ ní ìkẹyìn

Tí fáìlì bá jẹ́ orísun òtítọ́ rẹ, jẹ́ kí fáìlì ní àṣẹ nípasẹ̀ ìkọ́lé, kì í ṣe nípasẹ̀ ìrètí. Sọ interface kọ̀, jẹ́rìí pé ó ti lọ, lẹ́yìn náà ṣàtúnṣe, lẹ́yìn náà gbé e ró. Òfin rọrùn: kò sí àtúnṣe kankan nígbà tí ìfipamọ́ ṣì lè ṣiṣẹ́.

sudo cp -a /etc/wireguard/wg0.conf /root/wg0.conf.$(date +%F-%H%M)
sudo wg-quick down wg0
ls /sys/class/net/wg0 2>/dev/null || echo "interface is gone"
sudoedit /etc/wireguard/wg0.conf
sudo wg-quick up wg0

Ìlà àfipamọ́ kì í ṣe ààtò lásán. Tí tunnel bá jẹ́ ọ̀nà tí o ń gbà dé ẹ̀rọ yìí, ìgbésẹ̀ sísọ̀ kalẹ̀ lè fòpin sí ìpàdé rẹ, àti ẹ̀dà kan lórí dískì pẹ̀lú console tàbí ọ̀nà ìta-band ni ìpadàbọ̀ kan ṣoṣo tí ó ń ṣiṣẹ́. Ṣàyẹ̀wò ìlà kejì yẹn kí o tó gbẹ́kẹ̀lé e: orúkọ interface àtijọ́ nínú script tí ó ń kùnà ní ìdákẹ́jẹ́ ni ọ̀nà tí àwọn ènìyàn fi ń ṣàtúnṣe fáìlì tí ó ṣì wà láàyè.

Fífi SaveConfig = false kalẹ̀ kí ìsọ̀kalẹ̀ déédé tó wáyé ni ọ̀nà mìíràn tí a gbà, ó sì gbọ́dọ̀ ṣe é nínú fáìlì tí wg-quick ń kà gan-an. Ó dá ìfipamọ́ aládàáṣe kan náà dúró. Kò mú kí profáìlì NetworkManager ọ̀tọ̀ọ̀tọ̀, ìtújáde router tàbí ibi ìwọlé kọ́ńténà tún àwọn àtúnṣe rẹ kọ́, nítorí àwọn olùṣàkóso yẹn kò ka fáìlì yìí rárá.

Lo àwọn ìyípadà peer láìya interface

Kì í ṣe gbogbo àtúnṣe ni ó nílò ìdádúró. A lè lo àwọn ìyípadà ìpele peer sí interface tí ń ṣiṣẹ́ nípasẹ̀ yíyí fáìlì padà sí ìṣètò àti ṣíṣe ìṣirò rẹ̀, èyí tí ó yẹra fún ìgbésẹ̀ sísọ̀kalẹ̀ pátápátá àti nítorí náà yẹra fún ìfipamọ́:

sudo wg syncconf wg0 <(sudo wg-quick strip wg0)
sudo wg show wg0 peers
sudo wg show wg0 latest-handshakes

Ìgbésẹ̀ strip ṣe pàtàkì. Ó ń tẹ̀ fáìlì pẹ̀lú àwọn kọ́kọ́rọ́ tí ó jẹ́ ti wg-quick nìkan kúrò, kí àwọn àdírẹ́sì, DNS àti àwọn ìtọ́ni ìpín ọ̀nà má baà lọ sínú irinṣẹ́ tí kò lóye wọn. Lẹ́yìn náà ìṣirò ń lo àwọn peer àti kọ́kọ́rọ́ sí ẹ̀rọ alààyè láìtún interface dá, nítorí náà àwọn ìpàdé àti ọ̀nà tí ó wà ṣì wà.

Jẹ́ pípé nípa àwọn ààlà. Ṣíṣe ìṣirò peer kò yí àdírẹ́sì interface padà, kò yí àwọn ọ̀nà tí wg-quick fi kún, kò sì yí ìṣètò olùyẹ́jú padà, nítorí kò sí ọ̀kan nínú wọn tí ó jẹ́ ti ẹ̀rọ WireGuard. Fífi subnet kún AllowedIPs àti ríretí pé kernel yóò pín ọ̀nà rẹ̀ ni àìtọ́ kíkà àtijọ́; wg-quick gbọ́dọ̀ fi ọ̀nà kún nígbà gbígbé sókè tàbí ìwọ fúnra rẹ.

Ṣàyẹ̀wò ẹni tí ó ni interface kí o tó ṣàtúnṣe ohunkóhun

Lórí desktop tàbí sáfà tí ètò ìṣètò ń ṣàkóso, fáìlì lè jẹ́ jáde dípò ìwọlé. Ìsopọ̀ NetworkManager, profáìlì tí router dá, tàbí script ìbẹ̀rẹ̀ kọ́ńténà lè ní orúkọ interface kan náà, àti ní irú ipò yẹn ìtẹ̀lé wg-quick tí kò ní àbùkù ṣì ń ṣàtúnṣe ohun tí kò tọ́.

systemctl status wg-quick@wg0 --no-pager
nmcli connection show | grep -i wireguard
sudo wg showconf wg0 | head -n 5

Àṣẹ kẹta ń tẹ̀ ìṣètò alààyè ní ọ̀nà kan náà pẹ̀lú fáìlì, pẹ̀lú kọ́kọ́rọ́ àdáni, èyí tí ó wúlò fún ìfiwéra àti léwu nínú tikẹ́ẹ̀tì. Bo ó mọ́lẹ̀ kí o tó lẹ̀ ẹ́; kọ́kọ́rọ́ àdáni nínú ìlà ìtìlẹ́yìn jẹ́ ìfarapa títí láé, kì í ṣe àṣìṣe títẹ̀.

Tí ẹ̀ka iṣẹ́ kò bá ṣiṣẹ́ ṣùgbọ́n interface wà, ohun mìíràn ló dá a àti fáìlì kò ní àṣẹ. Àkíyèsí kan náà yẹn ń gba wákàtí kan lọ́wọ́ ṣíṣàtúnṣe fáìlì tí kò sí ohun tí ń kà.

Ṣàyẹ̀wò ìpadàbẹ̀rẹ̀ tó kàn, lẹ́yìn náà pa ìpadàbọ̀ mọ́

Ìdánwò tí ó ń fi àtúnṣe hàn gan-an ni ìpadàbẹ̀rẹ̀ kejì, nítorí ìtẹ̀lé yẹn ni ó kùnà ní àkókò àkọ́kọ́. Jẹ́rìí pé peer yóò là á já àti pé ìṣètò alààyè ṣì bá ohun tí ó wà lórí dískì mu:

sudo systemctl restart wg-quick@wg0
sudo wg show wg0 latest-handshakes
sudo grep -c '^\[Peer\]' /etc/wireguard/wg0.conf

Ṣe ìpadàbẹ̀rẹ̀ ní ìgbà méjì. Ìkọjá mímọ́ ẹ̀ẹ̀kan lè jẹ́ oríire: ìpadàbẹ̀rẹ̀ àkọ́kọ́ lè lo ìyípadà ìṣiṣẹ́ tí a kò tíì fi pamọ́, nítorí náà èkejì ni ó ń sọ fún ọ pé fáìlì àti ìṣiṣẹ́ gbà ní òpin èkínní.

Pa ẹ̀dà àfipamọ́ mọ́ láti ìbẹ̀rẹ̀ ìlànà títí o fi parí ìpadàbẹ̀rẹ̀ ìlọ́po méjì, lẹ́yìn náà paarẹ́ rẹ̀ tàbí gbé e kúrò nínú àpò ìṣètò. wg0.conf.bak tí ó sọnù lẹ́gbẹ̀ẹ́ fáìlì gidi kò léwu fún wg-quick ó sì ń dàrú fún ẹni tó kàn, ẹni tí yóò ṣàtúnṣe èyí tí kò tọ́ ní ìparí.

Àwọn àpilẹ̀kọ tó jọra