Arifa huacha kufika kwenye simu ambayo kwa upande mwingine inavinjari vizuri kupitia VPN ya kampuni. Kurasa za wavuti hupakia, programu hufunguka, na ujumbe huonekana tu nyumbani au baada ya handaki kuzimwa. Katika programu iliyojengwa juu ya Firebase Cloud Messaging, kituo cha push ni muunganisho wa nje tofauti wa muda mrefu, si njia ya HTTPS ambayo kivinjari kilithibitisha hivi punde. Pitia ukaguzi huu kwa mpangilio na usimame kwenye ule wa kwanza unaoshindikana.

Thibitisha kuwa programu kweli inatumia FCM

Si kila arifa ni push. Baadhi programu huzipanga ndani ya kifaa, nyingine huulizwa kupitia HTTPS, na nyingine hufika kupitia kituo cha mtoa huduma kisichohusiana na Firebase. Ikiwa manifest na vitegemezi vya programu vinajumuisha Firebase Messaging, arifa zake kwa kawaida hupita kupitia muunganisho wa FCM, na maktaba ya mteja husajili usajili chini ya lebo inayotabirika.

adb logcat -s FirebaseMessaging:V
adb shell dumpsys package <package> | grep -i firebase

Tokeni ya usajili kwenye kumbukumbu huthibitisha usafirishaji. Bila hiyo, unatengeneza hitilafu za mfumo wa arifa wa ngazi ya programu, na mabadiliko ya firewall hayatasaidia. Tofauti hii ni muhimu kwa sababu ujumbe uliofika lakini usioonyeshwa kamwe na ujumbe usiokuja kamwe huonekana sawa kwa mtumiaji.

Angalia milango ya nje, si tovuti

Miunganisho ya kifaa cha FCM ni TCP inayoanzishwa na kifaa kuelekea mlango 5228, huku 5229 na 5230 zikiwa akiba na 443 kama njia ya mwisho. Firewall inayoruhusu 443 kwa kuvinjari bado inaweza kuvunja push, na kanuni inayoruhusu kikoa cha API cha programu haifuniki sehemu za mwisho za ujumbe, ambazo ni huduma tofauti.

Hizi ni miunganisho ya nje kutoka kwa simu. Huchapishi mlango wa kuingia kwenye kifaa au lango la VPN, kwa hivyo ikiwa mtu anapendekeza upelekaji wa mlango, muundo tayari umeharibika. Ndivyo ilivyo pia kwa kanuni inayofungua mlango mmoja kwa anwani zote za mtandao: iweke kwa maeneo yaliyoandikwa.

PortRoleWhat to verify
5228Primary FCM connectionOutbound allowed and session state kept
5229, 5230Fallback portsOften missing from hand-written allowlists
443Last-resort fallbackWorks only if the client actually falls back
HTTP proxyNot a supported FCM transportProxy exclusion or bypass, not a port rule

Mwongozo wa mtandao wa Firebase pia inasema kwamba itifaki ya uwasilishaji ya FCM haiwezi kupitishwa kwenye proksi ya kawaida ya HTTP. Kwa hivyo kivinjari kufanya kazi kupitia proksi ya wavuti ya kampuni hakithibitishi chochote kuhusu soketi ya push: ni wateja wawili tofauti wenye njia tofauti.

Angalia muda wa kusubiri usio na shughuli unaoua soketi

Muunganisho wa FCM hukaa wazi kati ya ujumbe, jambo linaloufanya kuwa nyeti kwa muda wa NAT na ukaguzi wa hali. Mwongozo wa Firebase unaomba angalau dakika 30 za uvumilivu wa kutokuwa na shughuli mahali ambapo sera kama hizo zinatumika. Muda wa kikao wa dakika tano huondoa ramani kimya, na simu huunganisha tena tu pale kitu kinapoishtua, kwa hivyo ujumbe huja kwa mafungu au haufiki kabisa.

Soma jedwali la vikao kwenye firewall au lango la VPN na upate muunganisho wa simu kwenda 5228-5230. Linganisha maisha yaliyobaki na thamani iliyoandikwa. Ikiwa ni mafupi zaidi, ongeza muda wa milango hiyo badala ya kubadilisha sera zote kwenye kifaa, kwa sababu mabadiliko ya muda wa jumla ni vigumu kuyahalalisha na vigumu zaidi kuyabatilisha.

Uwasilishaji wa push pia hutegemea ramani ya sehemu ya mwisho kustahimili mzunguko kati ya Wi-Fi na mtandao wa simu. Ramani iliyofungwa kwenye kiolesura kimoja inaweza kuachwa wakati wa kuhamisha hata wakati mitandao yote miwili inaruhusu milango.

Amua ikiwa kupita VPN kunakubalika

Wateja wa VPN wa Android wanaweza kuruhusu trafiki kupita handaki, na FCM inaweza kutumia mtandao wa chini wakati kupita huko kunaruhusiwa. Kituo cha push hubaki kimesimbwa katika hali hiyo, lakini hakibebi tena anwani ya handaki, kwa hivyo ufichaji wa IP wa VPN hautumiki kwayo. Ni maelewano ya sera, si hitilafu.

Ikiwa sera yako inakataza kupita, njia ya handaki lazima ibebe muunganisho: milango wazi, muda mrefu wa kutosha, proksi isiwe njiani. Usiondoe kimya huduma inayosimamiwa na usilegeze kufuli kwa sababu tu arifa zinafanya kazi kwenye mtandao usiosimamiwa. Aikoni ya VPN haisemi njia gani huduma fulani ilichagua

Tenganisha uwasilishaji na uonyeshaji, kisha jaribu mara moja

Ruhusa, mipangilio ya kituo, Usinisumbue na vivunja vya kila programu huamua ikiwa ujumbe uliowasilishwa utaonyeshwa. Kwenye Android 13 na zaidi ruhusa ya arifa hutolewa wakati wa utekelezaji, na ruhusa iliyokataliwa huzalisha ukimya unaofanana kabisa na mlango uliozuiwa. Ujumbe uliofika lakini usioonyeshwa ni tatizo la uwasilishaji; shughulikia kando.

Fanya jaribio moja lililodhibitiwa badala ya kutuma ujumbe ovyo. Weka kifaa, akaunti na programu bila mabadiliko, tuma ujumbe mmoja wenye muhuri wa muda unaojulikana, na linganisha hali ya VPN na mtandao usio na VPN ulioidhinishwa. Rekodi muda wa kupokea kwenye logcat na muda wa kuonyesha kwa kila utekelezaji. Ikiwa uwasilishaji unatofautiana lakini uonyeshaji hauna, njia ya mtandao ndiyo kigezo; ikiwa vyote viwili ni sawa, endelea kuangalia programu.

Mpe mmiliki wa mtandao milango, kikomo cha proksi, muda uliopimwa na uamuzi wa kupita katika noti moja. «Zima VPN» si ugunduzi, na kuruhusu trafiki yote ya Google si marekebisho yenye mipaka.

Makala zinazohusiana