PPTP inaunganishwa kisha inakwama nyuma ya Linux NAT: msaidizi wa GRE
TCP 1723 inaunganishwa na njia ya data inakufa: PPTP husafiri ndani ya GRE, ambayo haina bandari. Pakia wasaidizi, waunganishe kwa uwazi na ufungue itifaki 47.
Mtu anaongeza mbele 1723, mteja anafikia seva, uthibitishaji unaanza, kisha kila kitu kinasimama bila hitilafu. Hitimisho la kawaida ni nywila isiyo sahihi, kwa hiyo nywila inachapwa tena mara tatu. Uongezaji mbele ulikuwa sawa na tambulisho lilikuwa sawa. Kilichovunjika ni itifaki ya pili ambayo uongezaji mbele haukuwahi kuifunika, na thamani ya chaguo-msingi ya kerneli iliyoacha kwa utulivu kusaidia nayo.
Uongezaji mbele haukuwa tatizo kamwe
Kanuni ya kuongeza mbele bandari inaeleza trafiki ya TCP au UDP. Haiwezi kueleza mzigo unaobadilika kwenda itifaki nyingine ya IP katikati ya kikao, na PPTP hufanya hivyo hasa.
Ndiyo sababu muunganisho unaonekana mzima hadi dakika unakwama. Sehemu ambayo kanuni ya bandari inaweza kudhibiti ilifanikiwa, na sehemu ambayo haiwezi kudhibiti ndiyo sehemu iliyoshindwa.
TCP kwa udhibiti, GRE kwa data
Simu inajadiliwa kupitia TCP 1723. Ikisha simama, mzigo unaingia GRE, itifaki ya IP 47, ambayo haibebi namba za bandari hata kidogo. Kanuni inayotegemea bandari haina cha kulinganisha.
Kile GRE inachobeba ni kitambulisho cha simu katika kichwa chake, na mtafsiri wa NAT lazima aandike upya sehemu hiyo kwa uthabiti katika pande zote mbili, vinginevyo nusu mbili za kikao zinaacha kukubaliana. Upande mmoja ukiandikwa upya na mwingine hapana, kikao kinabadilika kuwa kile kinachothibitisha kisha kutupa kila pakiti ya data. Hiyo ndiyo sura halisi ya dalili: mafanikio, kisha kimya.
GRE tupu bila PPTP haihitaji uandikaji upya kama huo, ndiyo sababu handaki ya kawaida ya GRE inaweza kufanya kazi kupitia kipanga-njia kinachoshindwa kwa mteja wa PPTP kwenye njia hiyo hiyo.
Moduli nne na sysctl iliyozizima
Moduli mbili husimamia uundaji wa fremu, nf_conntrack_proto_gre na nf_nat_proto_gre. Nyingine mbili husimamia kitambulisho cha simu, nf_conntrack_pptp na nf_nat_pptp. Kupakia ya mwisho huvuta nyingine kupitia vitegemezi, kwa hiyo orodha ya moduli inapaswa kuonyesha zote nne.
Maelekezo ya zamani hutumia kiambishi awali ip_ cha enzi ya 2.6. Amri hizo zinaweza kuonekana zinafanya kazi bila kupakia chochote, kwa hiyo angalia orodha iliyopakiwa badala ya hali ya kutoka.
Kuzipakia hakutoshi tena. Tangu Linux 4.7 sysctl net.netfilter.nf_conntrack_helper ni 0 kwa chaguo-msingi, jambo ambalo huzima ugawaji wa kiotomatiki wa msaidizi kwa mitiririko mipya. Kipanga-njia kinaweza kuwa na moduli zote na bado hakina kutafsiri chochote. Angalia thamani tendaji kabla ya kuangalia orodha ya moduli tena.
Ama washa tena ugawaji wa kiotomatiki kwa ujumla, au unganisha msaidizi kwa mitiririko inayohitaji na uache kila kitu kingine kama kilivyo:
iptables -t raw -A PREROUTING -p tcp --dport 1723 -j CT --helper pptpChaguo la pili ndilo linalopendekezwa. Linapunguza tabia kwa trafiki ya PPTP badala ya kuwezesha tena ugawaji wa kiotomatiki kwenye kipanga-njia kote.
Kufungua itifaki isiyo na bandari
Kanuni ya ukuta wa moto inayoruhusu 1723 haisemi chochote kuhusu itifaki 47. Kwenye firewalld, ruhusu itifaki katika eneo linaloelekea mteja. Kwenye iptables ya kawaida, kubali itifaki gre kwenye mnyororo wa kuingiza.
Kisha nasa pande zote mbili. Pakiti zinazoondoka kwa mteja bila majibu kufika zinamaanisha njia ya kurudi imechujwa, na hiyo ni hitilafu tofauti na tambulisho lililokataliwa.
Baada ya kuunganishwa, kikomo cha ukubwa
GRE huingiza kichwa, na PPP ndani yake huongeza zaidi, kwa hiyo kiungo kinachofanya kazi huripoti MTU chini sana ya 1500. Majibu madogo hupakiwa na makubwa hukwama, jambo linaloonekana kama tatizo la pili lisilohusiana linalotokea dakika ile ile la kwanza linatatuliwa.
Soma MTU kwenye adapta ya PPP ya mteja na oanisha na hesabu ya kipanga-njia yenyewe badala ya kupunguza namba hadi kitu kifanye kazi. Pakiti za ukubwa kamili zinazotoka bila kitu kurudi zinaelekeza kwenye kikomo hicho na si kwenye utafsiri.
Kutengeneza njia kunamrudisha mtumiaji kazini, na hakufanyi PPTP kuwa chaguo zuri. MS-CHAPv2 na RC4 zimepitwa na wakati kwa muda mrefu, kwa hiyo chukulia upakiaji wa moduli kama marekebisho ya muda na panga kuhamia itifaki inayotunzwa.