Zajmuję się tworzeniem strony internetowej do zarządzania użytkownikami OpenVPN z frameworkiem Django. Ale muszę wiedzieć, czy jest jakiś sposób na wyodrębnienie aktywnych użytkowników z OpenVPN? Na moim serwerze działa Ubuntu 12.04.
59
/etc/openvpn/openvpn-status.log
nie działało dla mnie w Debianie, nigdy się nie zmieniło, zamiast tego/var/run/openvpn/server.status
działało idealnie.Aby wypełnić odpowiedź @sekrett :
Będzie działał, nie jest to „zwykłe” zabójstwo, tylko prośba o wydrukowanie niektórych statystyk.
Wyświetlane statystyki są bardzo czytelne. Przykładowe dane wyjściowe:
źródło
Sam dostałem tę samą potrzebę i najprostszym rozwiązaniem, jakie znalazłem, było użycie wspomnianego telnetu do połączenia z interfejsem zarządzania (musisz dodać: zarządzanie localhost 6666 , w pliku konfiguracyjnym serwera).
Aby uzyskać dokładną liczbę klientów, możesz:
Otrzymasz wiele dzienników:
W moim przypadku, ponieważ mam bardzo dużą liczbę klientów, korzystanie z pliku dziennika jest zdecydowanie mało praktyczne.
źródło
Możesz również wysłać sygnał usr2 do procesu openvpn, aby zapisał informacje statystyczne do syslog. Jest to bezpieczne, nie trzeba restartować, jeśli wcześniej nie włączano interfejsu zarządzania.
źródło
killall -USR2 openvpn
. Następnie obserwuj dzienniki. Może być/var/log/syslog
lub/var/log/messages
zależy od dystrybucji.kill
polecenie może wysyłać różne sygnały, USR2 nie zabije, to tylko sygnał. Możesz zobaczyć listę tutaj: linux.org/threads/kill-signals-and-commands-revised.11625 lub przez uruchomieniekill -l
.Zarządzam serwerami OpenVPN naszej firmy i tak widzę aktywne połączenia,
dodaj do /etc/openvpn/server.conf
zrestartuj serwer openvpn
dodaj pakiet Python Monitor OpenVPN - będzie on działał przez serwer WWW Gunicorn i pokazywał aktywne połączenia,
stworzyć wirtualną env (niewymagane, ale dobra praktyka z pakietami py)
zainstaluj wymagane pakiety
dodaj plik konfiguracyjny Monitora
uruchom serwer WWW, który pokaże aktywne połączenia,
Aby zatrzymać monitor
aby zobaczyć aktywne połączenia, przejdź do publicznego adresu IP swojego serwera VPN
upewnij się, że skonfigurowałeś właściwą zaporę dla portu 80, biała lista tylko zaufanych przychodzących adresów IP
źródło
Wystarczy użyć sacli z następującą komendą. Spowoduje to wyświetlenie listy podłączonych klientów VPN.
Aby zobaczyć wszystkie adresy IP, użyj tej opcji. ./sacli VPNStatus
źródło