Standardmäßig ist bei ntop nur der Konfigurationsbereich passwort-geschützt. Der Zugriff auf die Informationsseiten ist offen.
Da top seinen eigenen Webserver benutzt, ist der password-geschützte Zugriff nur mit Hilfe eines Proxys möglich. Da bei mir schon ein apache2 läuft, wird dieser als Reverse-Proxy benutzt.
Vorarbeiten
Der Webserver von ntop lauscht standardmäßig auf allen IP-Adressen 0.0.0.0 auf Port 3000. Unter Admin -> Configure -> Startup Options muss man entsprechend den HTTP Server auf 127.0.0.1:3000 umstellen.
Jetzt ist ein direkter Zugriff aus dem Internet nicht mehr möglich.
Apache Konfiguration
Aktivierung der notwendigen Apache-Module
# a2enmod proxy # a2enmod proxy_http # service apache2 restart
Virtueller Host für ntop
/etc/apache2/sites-available/ntop
<VirtualHost *:80 >
ServerName ntop.rana.at
<Proxy *>
Order deny,allow
allow from all
AuthType Basic
AuthName "no public monitoring"
AuthUserFile /etc/apache2/htpasswd/ntop
Require valid-user
</Proxy>
RewriteEngine On
RewriteCond %{HTTP_REFERER} ntop.rana.at/
RewriteCond %{REQUEST_URI} !^/
RewriteRule ^/(.*)$ http://ntop.rana.at/$1 [L,R=permanent]
RewriteCond %{REQUEST_URI} ^/
RewriteRule ^/(.*)$ http://localhost:3000/$1 [L,P]
ProxyPass / http://localhost:3000
ProxyPassReverse / http://localhost:3000
</VirtualHost>
Passwort für den Zugriff setzen:
# htpasswd /etc/apache2/htpasswd/ntop username
Schreibe eine Antwort