OpenVPN 연결을 확인하는 방법은 무엇입니까?

OpenVPN 연결을 확인하는 방법은 무엇입니까?

서버를 통해 OpenVPN 클라이언트와 서버 사이의 열린 연결을 보고 싶습니다. tcpdump에는 아무것도 표시되지 않지만 OpenVPN이 작동하고 실행 중이므로 이 작업을 수행하는 방법을 잘 모르겠습니다.

마찬가지로 SSH를 통해 OpenVPN 서버에 연결할 때 OpenVPN 정보 없이 SSH 패킷만 전송되는 것을 볼 수 있습니다. 왜?

감사해요!

답변1

OpenVPN은 상태 로그에 열린 연결을 저장합니다. 다음과 같은 방법으로 상태 로그를 찾을 수 있습니다.

grep '^status' /etc/openvpn/server*.conf

제 경우(Ubuntu)에는 다음과 같은 결과가 나타납니다(두 개의 OpenVPN 인스턴스가 실행 중입니다).

/etc/openvpn/server6.conf:status /var/log/openvpn/openvpn-status6.log
/etc/openvpn/server.conf:status /var/log/openvpn/openvpn-status.log

cat /var/log/openvpn/openvpn-status.log

다음을 표시합니다.

OpenVPN CLIENT LIST
Updated,Sun Jul 24 22:42:55 2022
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
wino-surface6,10.9.4.1:20994,76104,10838,Sun Jul 24 22:42:22 2022
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
10.12.0.4,wino-surface6,10.9.4.1:20994,Sun Jul 24 22:42:54 2022
2001:db8::1002,wino-surface6,10.9.4.1:20994,Sun Jul 24 22:42:54 2022
GLOBAL STATS
Max bcast/mcast queue length,0
END

첫 번째 OpenVPN 인스턴스에서 할당한 2개의 IP 주소(IPv4 하나와 IPv6 하나)를 가진 클라이언트(wino-surface6)가 있음을 확인할 수 있습니다.

tcpdump가 OpenVPN 패킷을 볼 수 없는 이유에 대해서는 올바른 프로토콜과 포트를 찾고 있는지 확인해야 합니다. 다음을 통해 이를 확인할 수 있습니다.

egrep '^(port|proto)' /etc/openvpn/server*.conf

관련 정보