Temat: prosta stronka WWW na urządzeniu OpenWrt

Hej,

Mam do zrealizowania taki temat. Mam urządzenie, które posiada dwa interfejsy sieciowe. Jeden interfejs ma na stałe adres 192.168.1.222 i jest podłączony do komputera w tej podsieci. Drugi jest w innej podsieci - załóżmy 10.47.0.222 i ma służyć jako port serwisowy. Jedyne połączenie jakie można wykonać to z dowolnego hosta z drugiej podsieci do hosta 192.168.1.223.

Strona WWW miałaby być pod adresem 10.47.0.222 i zawierać następującą funkcjonalność:

1. Logowanie standardowym admin/admin
2. Formularz do zmiany hasła przy pierwszym logowaniu - bez wymuszania złożoności hasła - tylko stare hasło, nowe hasło, i powtórzenie nowego hasła
3. Możliwość zmiany adresu drugiego interfejsu oraz maski podsieci.

Jak się za to zabrać? Przy większych tematach aplikacje WWW robię w Angularze. Tutaj byłby czysty HTML, ale bym musiał jeszcze uruchamiać skrypty na urządzeniu, które zmieniają hasło i ustawiają routing oraz adres IP interfejsu i nie wiem od czego zacząć.

Kal800

2 (edytowany przez Cezary 2023-04-26 14:11:51)

Odp: prosta stronka WWW na urządzeniu OpenWrt

A dlaczego nie mógł byś tego zrobić w angularjs. Jeżeli znasz to było by prościej. A jak nie to jedziesz w czystym js.

OpenWrt może takie rzeczy realizuje przez rpc/ubusa (tak jak ja zrobiłem swoje easyconfig).  Zobacz np. https://openwrt.org/docs/techref/ubus - tam masz wołanie sesji, logowanie, wykonywanie rzeczy przez uci albo dowolnej innej przez exec, czytanie plików.

Oczywiście możesz to zrobić też w inny sposób - klienta ssh w js i robić wszystko jako wywołania przez ssh.
Możesz także zrobić zwykłe skrypty w cgi (w shellu) które robią to co chcesz a resztę frontendu w html/js  - zobacz np. https://dl.eko.one.pl/attitude_adjustme … 05_all.ipk ( https://eko.one.pl/?p=openwrt-blokada lub stary easyconfig: https://openrouter.info/forum/viewtopic … &t=661 )
Możesz także zrobić swój własny serwer www w pythonie/perlu który już wypluwa gotowy html.

Możliwości masz wiele.

Masz niepotrzebny router, uszkodzony czy nie - chętnie przygarnę go.