Ubuntu の VPN(L2TP/IPsec)で接続/切断したユーザーや接続元IPアドレスの確認方法

Ubuntu の VPN(L2TP/IPsec)で、ログからユーザのVPN接続/切断や、接続元IPアドレスを確認する方法です。
なお、VPNのユーザー認証は、Linuxアカウントで認証する設定になっていることが必要です。

UbuntuでのVPN(L2TP/IPsec)サーバで、Linuxアカウントで認証する: パソコン鳥のブログ


auth.log による確認


VPN接続/切断時のユーザー名と時間がわかります。
接続元のIPアドレスはわかりません。(後述のsyslog による確認が必要です)

下記のようにログ出力されています。(時刻の表示は省略しています)
XXXXX の箇所がユーザー名です。


接続時
pppd[19279]: pam_unix(ppp:session): session opened for user XXXXX by (uid=0)

切断時
pppd[19279]: pam_unix(ppp:session): session closed for user XXXXX



syslog による確認


VPN接続/切断時のユーザー名と時間、接続元のIPアドレスがわかります。
ただし、これらのログは複数行に分かれているので、面倒です。

接続時


下記のようにログ出力されています。(時刻の表示は省略しています)
XX.XX.XX.XXは接続元IPです。
PPPP の箇所は数値が表示されます。


xl2tpd[10003]: Call established with XX.XX.XX.XX, PID: PPPP, Local: 44918, Remote: 1, Serial: 0


接続元IPは分かりますが、ここからユーザ名を取得するには、PID: PPPP の PPPP の数値を含む、pppd[PPPP] の行を探します。

例えば、PID: 15072 だったら、pppd[15072] を含む次のような行を探します。
XXXXX がユーザー名になります。


pppd[15072]: user XXXXX logged in on tty  intf ppp0


次のような行の YY.YY.YY.YY はクライアントPCに振られたIPアドレスです。


pppd[15072]: remote IP address YY.YY.YY.YY


切断時


接続時の PID: PPPP に対応する切断時のログは、下記のようにログ出力されています。(時刻の表示は省略しています)
PPPP の数値を含む、pppd[PPPP] の行です。

例えば、PID: 15072 だったら、pppd[15072] を含む次のような行を探します。


pppd[15072]: Connect time 18.5 minutes.
pppd[15072]: Connection terminated.


なお、切断時のログの行にはユーザー名は含まれていないので、対応する接続時のログの行からユーザー名を取得する必要があります。



ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント