Zabieram się do pisania pracy inżynierskiej o tytule:
Interfejs webowy do zarządzania zaporą sieciową i podziałem pasma na serwerze dostępowym (Linux)
W skrócie: aplikacja PHP zarządzająca sieciowymi aspektami serwera linuksowego(bardzo blisko webmina).
Od strony sieciowej mam zamiar zapewnić bezpieczeństwo przez SSL, .htaccess-hasło oraz autoryzacja przez PHP.
Pozostaje mi tylko kwestia możliwości ingerowania w skrypt firew[ba[/b]lla i posługiwanie się narzędziem tc w możliwie najbezpieczniejszy sposób, ale jak?
Mój aktualny zamysł:
Legenda:
- walidator - zewnętrzny prosty skrypt, w którego nie można ingerować z poziomu przeglądarki. Sprawdza plik pod kontem składniowym.
- Czy taki system wprowadzania ma w ogóle sens?
- Jeżeli tak to tworzyć pliki tymczasowe za pomocą CGI czy jakieś shell_exec(touch...)?
- Kiedy już fizycznie istnieje plik tymczasowy to jedyną możliwością wymuszenia na walidatorze sprawdzenia jego składni jest zlecenie CRON-a? Czy miałoby sens aby PHP kazało utworzyć plik .tmp, po czym kilka sekund później wywołałoby walidator?
- Jak bezpiecznie wydać polecenie do przepisania tak ważnego pliku jak rc.firewall (tzn. kto/co z jakimi prawami powinien to wykonać)?
- To już takie bardziej kosmetyczne pytanie odnośnie akceptacji wprowadzonych zmian przez ,,administratora''. Zdarzyło mi się kilka razy zdalnie zmieniać ustawienia firewalla i przez niedopatrzenie np. uniemożliwiłem dostęp z zewnątrz do serwera, albo w ogóle odciąłem serwer od sieci co potrafiło nawet uniemożliwić włączenie się systemu, a co za tym idzie, lokalnie chroot itd.
Reasumując chodzi mi po głowie implementowanie mechanizmu działającego na zasadzie zmiany rozdzielczości w Windowsie. po akceptacji zmian są one wdrażane jednak jeżeli zmieniający nie zaakceptuje efektów powraca wszystko do poprzedniej konfiguracji.
Pozdrawiam
boras86