Ciscoでログイン記録を取る

Ciscoのセキュリティ対策でログイン記録をSyslogに残すことができる。
要するに不正アクセスがあったかどうかを記録できるのである。

※参考:Cisco IOS Login Enhancements (Login Block)

まぁそこまでログイン記録を気にすることもないと思うが、
こんなことも出来るよ程度のメモを取っておく。


ログイン記録


Cisco機器でログイン記録を取る為には下記Configを投入すれば良い。

 RT01(config)#login on-failure log
RT01(config)#login on-success log


読んで字の如く、failureがログイン失敗ログ、successがログイン成功ログとなる。
しかし、これだけではログ出力はしてくれない。
ログイン時に使用するusernameを決める必要がある。

 RT01(config)#username cisco secret cisco
RT01(config)#line vty 0 4
RT01(config-line)#login local


これでログが出力されるようになる。
ちなみにログレベルは出力内容によりバラバラだが、Informationalもあるので注意すること。

下記がログイン成功ログ。
こちらのログレベルはNotificationsになる。

 %SEC_LOGIN-5-LOGIN_SUCCESS: Login Success [user: cisco] [Source: 192.168.1.1] [localport: 23] at 15:48:22 JST Wed Aug 16 2017


ログアウト時はこんな感じ。
こちらのログレベルはInformationalになる。

 %SYS-6-LOGOUT: User cisco has exited tty session 2(192.168.1.1)


ログイン失敗時はこんな感じ。
こちらのログレベルはWarningsになる。

 %SEC_LOGIN-4-LOGIN_FAILED: Login failed [user: cisco] [Source: 192.168.1.1] [localport: 23] [Reason: Login Authentication Failed - BadPassword] at 15:53:19 JST Wed Aug 16 2017


Firewall並にログイン時のログが出てくるので、鬱陶しいかな少し。
本当に必要なときだけ有効にすれば良いと思う。


ログイン失敗時のアクション


ログイン失敗時に、ある程度ロックをかけることができる。
Firewallに良くあるように3回ログイン失敗したら、
リモート接続からのログイン行為自体が暫く拒否される的な。

設定は一行追加すれば良い。

 RT01(config)#login block-for 60 attempts 3 within 180


Configの意味は「180秒以内に、3回失敗したら、60秒間アクセスが拒否される」である。

この状態で3回連続で失敗してみると下記ようなログが出力される。

 %SEC_LOGIN-1-QUIET_MODE_ON: Still timeleft for watching failures is 146 secs, [user: cisco] [Source: 192.168.1.1] [localport: 23] [Reason: Login Authentication Failed - BadPassword] [ACL: sl_def_acl] at 15:53:23 JST Wed Aug 16 2017


次にアクセスしようとするとこのように拒否される。

logf000.jpg

出力ログの赤字部分に注目すると"ACL"とある。
これは"Secure Login Default ACL"のことであり、
ログイン失敗が上限に達すると自動的に適用される。

show runを確認してみると、確かにVTYに一時的に適用されている。
ちなみにアクセス拒否時間が解除されれば自動的にConfigからも消えていた。

 line vty 0 4
access-class sl_def_acl in
login local


ACLの中身はConfigでは確認できないので、showコマンドで見る必要がある。

 RT01#show ip access-lists         
Extended IP access list sl_def_acl
10 deny tcp any any eq telnet
20 deny tcp any any eq www
30 deny tcp any any eq 22
40 permit ip any any


ことごとくリモートログインが拒否されているのがわかる。

今回の設定だと、一分後には解除のログが出力される。

 %SEC_LOGIN-5-QUIET_MODE_OFF: Quiet Mode is OFF, because block period timed out at 15:54:23 JST Wed Aug 16 2017


注意点としては、ログイン失敗時はリモートログインがanyで拒否される点になる。
IPアドレスを指定しての拒否ではないので、多少支障が出るかもしれない。
拒否のタイムアウト時間を長くしすぎない点がポイントかな。


ログイン関連showコマンド


いくつかshowコマンドがあるので、記載しておく。

ログイン失敗時のアクションを確認するには下記コマンド。
赤字部に設定内容が表示されている。

 RT01#show login
A default login delay of 1 seconds is applied.
No Quiet-Mode access list has been configured.
All successful login is logged.
All failed login is logged.

Router enabled to watch for login Attacks.
If more than 3 login failures occur in 180 seconds or less,
logins will be disabled for 60 seconds.

Router presently in Normal-Mode.
Current Watch Window remaining time 69 seconds.
Present login failure count 0.


また、ログイン失敗時のカウントも確認できる。

 RT01#show login failures 
Information about last 50 login failure's with the device

Username SourceIPAddr lPort Count TimeStamp
cisco 192.168.1.1 23 5 16:28:11 JST Wed Aug 16 2017
aaa 192.168.1.1 23 1 16:28:15 JST Wed Aug 16 2017


やってみると意外と面白いが、ログを取りすぎてもSyslogを圧迫するから
やはりあまり出番はなさそうかな・・・。


以上。



LB アクセスログ 2


この記事へのコメント