Image

ナレッジベース → Debian 12 での ssh ログイン成功時の通知の送信

[仮想サーバー]
公開日: 05.10.2023

各ユーザーがSSHにログインするたびに、通知をメールで送信します。この通知には、接続が成功した時間とIPアドレスなどの情報が含まれます。

このような通知を設定することで、いつ誰がSSHを使用してサーバーにアクセスしたかを確認および管理できます。

コンソールから認証を使用してメールを送信するために、必要なパッケージをインストールして設定します。

1. インストール:

apt install ssmpt
apt install mailutils

2. ssmtpサービスの設定、設定ファイルを次のように編集します:

nano /etc/ssmtp/ssmtp.conf

UseSTARTTLS=YES
root=email@domain.tld
mailhub=mail.domain.tld:587
AuthUser=email@domain.tld
AuthPass=P@ssw0rd
FromLineOverride=YES

3. ユーザーがログイン時に実行されるファイルを編集します:

nano /home/user1/.bashrc

echo 'ALERT - user1 ssh access (server-name) on:' `date` `who` | mail -s "SSH Login"  to@domain.tld
...
# ~/.bashrc: executed by bash(1) for non-login shells.

4. これで、ユーザーuser1がログインするたびに通知が送信されます:

ALERT - user1 ssh access (server-name) on: Thu Oct 5 14:41:21 UTC 2023 user1 pts/0 (xx.ip.xx.ip)

5. 権限の設定。 .bashrcファイルはユーザーのホームディレクトリにあるため、デフォルトではユーザーが編集できます。これを防ぐために、rootユーザーから書き込み権限を無効にします:

chmod 444 /home/user1/.bashrc

完了です。これで、ユーザーはログイン後に設定された通知を無効にすることができなくなります。





No Comments Yet