Jak już stali czytelnicy doskonale wiedzą, tu i ówdzie używam zapory FortiGate. Używam też FSAE, czyli Fortinet Server Authentication Extensions, by kierować ruchem ze względu na przynależność danego użytkownika do grupy w Active Directory.
Wszystko było w porządku gdy były dwie grupy – ‘góra’ i ‘plebs’. Rozróżniani byli kategoriami stron, do których mieli dostęp i zakresem portów (drudzy mieli w zasadzie tylko HTTP i HTTPS). Problem zaczął się w momencie rozdrobnienia ‘plebsu’ – w końcu to ludzie, którzy zajmują się księgowością, zakupami czy nieruchomościami więc przy jednoczesnym ogólnym ograniczeniu dostępu do informacji trzeba konkretnym grupom ograniczyć możliwe kategorie.
Każdej grupie stworzyłem osobny profil filtrowania (web filter profile) i przyporządkowałem w odpowiedniej podregule.
Z jakiegoś powodu zmieniłem kolejność tych reguł i nagle użytkownicy zaczęli mieć pretensje, że nie pozwalam im pracować. W sumie to tylko jedna z grup milczała i nie byłą to ‘góra’. Po kilku godzinach analiz znalazłem źródło problemu. Otóż przy zmianie kolejności podreguł, grupa dostaje profil filtrowania taki, na jakiej był początkowo pozycji. Czyli układ taki:
1 internet_P
4 internet_I
2 internet_Z
3 internet_K
spowoduje, że internet_I będzie miał profil grupy internet_Z, internet_Z – ten od internet_K, a internet_K – internet_I.
Mieszałem na różne sposoby kolejnością i jestem pewien, że profil filtrowania jest na sztywno powiązany z pozycją reguły, dla której był pierwotnie przypisany. Dziwne, prawda?
Nie chciało mi się już szukać czemu dokładnie tak się dzieje, bo może to błąd silnika, a nie sposobu zaczytywania konfiguracji.
Problem zgłosiłem i niniejszym publicznie ogłosiłem, gdyby ktoś też z tym walczył.
Warto przypomnieć publicznie również o tym, że pakiet podlega pod regułę, jeśli pasuje adres IP źródłowy i docelowy. W takim przypadku reguły bazowane na uwierzytelnianiu (ładne spolszczenie?) mające ten sam cel i źródło nie mogą współistnieć, ponieważ pakiet, którego ‘właścicielem’ jest użytkownik nie występujący w pierwszej regule, zostanie odrzucony. Trzeba to oczywiście rozwiązywać ‘podregułami’, pamiętając o ich poprawnej kolejności.
Notkę producenta można przeczytać w bazie wiedzy:
Swoją drogą ciekawe co się stanie, jeśli wyrzucimy pierwszą podregułę i usuniemy całkowicie profile filtrowania. Ktoś chętny do testów czy czekamy na kolejną łatę?
Tagi: Fortigate
Co w przypadku jak mam np. 50 komputerów i jednego użytkownika który krąży pomiędzy nimi? wszyscy mają mieć www a ten konkretny user nie? Z tego co do tej pory wyczytałem to nie ma możliwości by dana polisa sprawdzała po userze – tylko po IP.
Właśnie robię sprawdzanie po użytkowniku zalogowanym do AD. Jeśli ktoś biega po firmie i się uwierzytelnia na kolejnych komputerach (logowanie, podłączanie zasobu, runas) to wszędzie tam będzie identyfikowany jako on i zgodnie z regułami będzie miał dostęp jak sobie tego zażyczył administrator.
Być może nie zrozumiałem Twojego problemu. Jeśli możesz, rozwiń wątek proszę.