Informacje o systemie na stronie routera - jak to zrobić? [7 post]
|
amras666 |
Dodano 16-03-2009 11:15
|
User
Posty: 49
Dołączył: 02/10/2008 19:30
|
Chciałem pobawić się interfejsem i zmodyfikować to i owo. Mam już wykonany SD/MMC mod (karta 1 GB) i chciałbym żeby httpd używał /mmc/www/ jako katalogu głównego. Pytania w związku z tym mam dwa:
1. Czy muszę zmienić system plików na ext2 żeby nadać parametr +x skryptom wykonywalnym, tak jak robi się to w DD-WRT
2. Jakie polecenie muszę odpalić w celu skonfigurowania dwóch różnych katalogów dla dwóch różnych portów routera? W DD-WRT wiki znalazłem:
killall httpd
cd /www
httpd -p 81 -h /www
cd /jffs
httpd -h /jffs
i
/usr/sbin/iptables -I INPUT 1 -p tcp --dport 80 -j logaccept do firewalla
Ale httpd w tomato przy komendzie -help podaje tylko przełączniki -d, -p i -s, nie ma możliwości ustawienia folderu.
Gdzie mogę to zrobić?
Edytowany przez amras666 dnia 18-03-2009 20:24
|
|
|
|
shibby |
Dodano 16-03-2009 12:22
|
SysOp
Posty: 17110
Dołączył: 15/01/2009 20:30
|
mozesz uzyc mini_http
mini_httpd -p port -u root -d $katalog
Router: Unifi Cloud Gateway Max
Switch: Netgear MS510TXPP
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
|
|
|
|
amras666 |
Dodano 16-03-2009 14:36
|
User
Posty: 49
Dołączył: 02/10/2008 19:30
|
# mini_httpd -p 81 -u root -d /mmc/www
socket: Address family not supported by protocol
# chdir: No such file or directory
mini_httpd instalowany na /mmc/opt... co robić? |
|
|
|
shibby |
Dodano 16-03-2009 16:38
|
SysOp
Posty: 17110
Dołączył: 15/01/2009 20:30
|
podac pelna sciezke do mini_http przy odpalaniu np
/mmc/opt/bin/mini_httpd -p port -u root -d $katalog
Router: Unifi Cloud Gateway Max
Switch: Netgear MS510TXPP
Switch: Unifi USW-Flex-Mini - szt. 2
Wi-Fi: Unifi U6-Lite - szt. 2
Proxmox VE: i5-13400T, 64GB RAM, 2x 512GB NVMe, 3x 2TB SSD, Intel X710-DA2 SFP+
VM #1: Synology SA6400
VM #2: Debian, WWW
VM #3: Home Assistant OS
|
|
|
|
amras666 |
Dodano 17-03-2009 13:36
|
User
Posty: 49
Dołączył: 02/10/2008 19:30
|
Dzięki serdeczne, działa jak należy. Ale mam koleny problem - jak umożliwić mojemu httpd wyjście na świat?
W sieci lokalnej mam do niego dostęp bez problemu, ale od zewnątrz jest niewidoczny. Port 80 z internetu nie odpowiada (a to na nim mam mój serwer, gui przeniosłem na inny port) - pomimo ustawienia przekierowania portu 80 na router.
Domyślam się że chodzi o konfigurację firewalla ale nie mam pomysłu co i gdzie wpisać.... |
|
|
|
mctel |
Dodano 17-03-2009 16:22
|
User
Posty: 14
Dołączył: 08/09/2006 22:02
|
Ja mam zrobione na podstawie tego sposobu ,
http://openlinksys.info/forum/viewthread.php?forum_id=32&thread_id=5297
Sproboj zastosowac odpowiednio pkt 4 i 5
Cytat
4. Następnie wklejamy skrypt do Administration >> Script >> Firewall
iptables -A INPUT -p tcp -m tcp --dport 81 -j ACCEPT
5. W Port Forwarding >> przekierowujemy port 80 (ext port) na 81 (int port) na adres routera np: 192.168.1.1
mini_httpd masz z http://www.acme.com/software/mini_httpd/ ?
Jezeli tak mozesz podac jak to skompilowac ?
WRT54GL 1.1 - Tomato 1.17
|
|
|
|
amras666 |
Dodano 17-03-2009 17:06
|
User
Posty: 49
Dołączył: 02/10/2008 19:30
|
Wzialem ten z tablicy v3 - usunąłem wszystko poza haserl, mini_httpd, zmodyfikowalem start.sh:
#!/bin/sh
wd=$PWD
router=$(nvram get lan_ipaddr)
$wd/mini_httpd -p 80 -u root -c "**.cgi" -d $wd
I podmieniłem na razie tylko zawartośćstrony index.cgi w głównym katalogu na własną. |
|
|
|
amras666 |
Dodano 18-03-2009 20:24
|
User
Posty: 49
Dołączył: 02/10/2008 19:30
|
Ok, wszystko pięknie zadziałało - na dniach pewnie się pochwalę, tymczasem chciałbym zapytać - jak uzyskać w kodzie stony dostęp do takich smaczków jak ilość wolnej pamięci, podłączeni użytkownicy - żywcem z interfejsu tomato?
Metoda dowolna |
|
|
|
tabor |
Dodano 18-03-2009 22:46
|
User
Posty: 68
Dołączył: 20/11/2006 11:22
|
Polecam lekturę kodu tablicy - na początek v2.
A tak na szybko :
tworzysz sobie plik z rozszerzeniem "cgi" w katalogu z mini_httpd, nadajesz mu prawo do wykonywania (chmod +x) i wpisujesz co checsz, pierwesze 4 liniki muszą być, reszta według uznania.
#!/bin/sh
echo "Content-Disposition: text/html"
echo ""
#tutaj to co chcemy pokazać - np. użytkownicy online
/usr/sbin/ip -o neigh
Pozdro
Edytowany przez tabor dnia 19-03-2009 08:20
Nothing is out of reach if you have long arms.
|
|
|