SSID бойынша firewall ережесі Wi-Fi ауысқаннан кейін сүзуді тоқтатты
SSID-ге байланған firewall Android белгісіз желі атауын қайтарғанда ашық күйде істен шығады. Сәйкестікті орындаудан бөліп, белгісіз күйге өз саясатын беріңіз.
Ереже қарапайым еді: трафикті тек телефон кеңсе Wi-Fi-ына қосылған кезде сүз. Ол айлар бойы жұмыс істеді, содан кейін бір таңертең телефон сол SSID-де сол кілт белгішесімен отырды да, сүзу тоқтады. Желіде ештеңе өзгерген жоқ; өзгергені, қосымша желі атауын көре ала ма, жоқ па. Android-та «қай Wi-Fi-дамын» мен «осы трафикті бұғатта» екі бөлек жұмыс, ал оларды шатастыратын firewall дәл атау қолжетімсіз болған сәтте ашық күйде істен шығады.
Симптом: сәйкестік жоғалады, саясат соңынан жүреді
SSID ережесі мәнді оқып, содан кейін тармақ таңдайды. Оқу пайдалы ештеңе қайтармағанда, код бірдеңе істеуге тиіс, ал әдеттегі әдепкі, «күтілетін желі емес, сондықтан сүзбе». Бұл әдепкі рұқсат мәселесін трафиктің ағып кетуіне айналдырады. Кілт белгішесі көрініп тұрады, өйткені VPN қызметі әлі жұмыс істеп тұр; ол жай басқа тармақты орындап жатыр.
Оқиғалар ретіне қараңыз, желіге емес. Қабылданбаған рұқсат сұранысы, SSID-ге қатынасты басқа рұқсаттың артына жылжытқан жүйе жаңартуы, өшірілген орналасу қызметтері немесе жұмыс профилі саясатының өзгеруі, бұлардың бәрі телефон сол кіру нүктесінде қалғанда бірдей нәтиже бере алады.
Неліктен атау белгісіз болып қайтуы мүмкін
WifiInfo.getSSID() ағымдағы желінің қызметтер жиыны идентификаторын қайтарады, ал Android орналасуға сезімтал өрістерге қатынас рұқсатқа тәуелді екенін құжаттайды. Қатынас болмағанда, шақыру қатты сәтсіздікке ұшыраудың орнына UNKNOWN_SSID қайтарады. Сондықтан бос немесе белгісіз мән телефонның Wi-Fi-дан кеткенін дәлелдемейді; ол қосымшаның желіні жіктей алмайтынын дәлелдейді.
Екі тексеру жағдайларды ажыратады. Телефонның қосылғанын растап, жүйенің не хабарлайтынын қараңыз, содан кейін қосымшаның осы Android шығарылымында қажет рұқсатқа шын мәнінде ие екенін растаңыз:
adb shell cmd wifi status
adb shell dumpsys package <your.app> | grep -i -E "ACCESS_FINE_LOCATION|NEARBY_WIFI_DEVICES"
Егер күй жолы қосылған желіні көрсетіп, ал қосымша белгісіз атауды көріп тұрса, сізде рұқсат немесе API деңгейіндегі мәселе бар, Wi-Fi мәселесі емес. Firewall ережелеріне тиіспес бұрын оны түзетіңіз, өйткені әрбір келесі ереже қосымша оқи алмайтын мәнге қатысты бағаланады.
Сүзу шын мәнінде қайда жүреді
Жергілікті Android firewall әдетте трафикті қашықтағы серверге жібермей VpnService моделін пайдаланады: виртуалды интерфейсті алады, өз ережелерін қолданады және рұқсат еткенін жібереді. Платформа пайдаланушы профиліне бір белсенді VPN қызметіне рұқсат береді, ал екіншісі біріншінің үстіне қабатталудың орнына оны алмастырады. Сондықтан жеке firewall қосымшасы мен жеке жұмыс VPN-ы екі сатылы тізбек құрмайды; біреуі жеңеді.
Бұл SSID ережесі үшін маңызды, өйткені орындау нүктесі мен бақылау нүктесі әртүрлі құрамдастар. Құрылғыдан не шығатынын VpnService шешеді; Wi-Fi API тек белгі береді. Қосымша дұрыс орындап, дұрыс емес жіктеуі мүмкін, дәл осы осы мақаладағы ақау.
Белгісізге өз саясатын беріңіз
Желі сәйкестігін үш күй ретінде қарастырып, ережені шығармас бұрын әрқайсысының саясатын жазыңыз. Үшінші күй, ұмытылатын күй, шабуылдаушы немесе қате конфигурация сізді дәл сонда қояды.
| Observation | Policy to specify |
|---|---|
| Expected SSID is readable | The explicit filtering policy you designed |
| A different SSID is readable | The default policy for untrusted networks |
| Unknown, changing or unreadable | Fail closed until classification is reliable |
Жабық күйде істен шығу белгісіз күйдің ең қолайлы емес, ең қатаң орынды саясатты мұралануын білдіреді. Егер бұл телефонды жаңа желіде пайдалануға жарамсыз етсе, дұрыс шешім, әдейі және көрінетін ерекшелік, бос мәнді тексеруге жасырылған үнсіз сенім шешімі емес.
Таныс SSID, белгі, желі операторының дәлелі емес. Кез келген адам кеңсе атауымен кіру нүктесін іске қоса алады, сондықтан атау сәйкестігі сезімтал сессия мен сенімсіз сегмент арасындағы жалғыз нәрсе болмауы керек.
Тұрақты күйді емес, ауысуларды сынаңыз
Тұрақты күй сынағы ережені құрған желіде өтеді. Ақаулар ауысуларда өмір сүреді: қабылданбаған рұқсат, Wi-Fi-дан ұялы желіге, бір SSID-ден екіншісіне, VPN қызметінің қайта іске қосылуы және интерфейсті басып алған басқа VPN қосымшасы. Әрқайсысы үшін бар қосылыстардың қайта қаралатынын және күй белгісіз болғанда қорғалған трафиктің бұғатталған күйде қалатынын шешіңіз.
Нәтижені үш сөйлеммен жазыңыз: байқалған шарт, шешімді орындайтын құрамдас және әдейі жасалған қосалқы әрекет. Осы үшеуінің бірі жетпесе, ереже әлі саясат емес; ол кеңсе желісінде кездейсоқ жұмыс істейтін болжам.