2018年2月1日木曜日

Unbuntu 16.04へsshでログインした時のメッセージ

Unbuntu 16.04へsshでログインした時に以下のようなメッセージが表示されることがあります。
Welcome to Ubuntu 16.04.3 LTS (GNU/Linux 4.4.0-112-generic x86_64)

 * Documentation:  https://help.ubuntu.com
 * Management:     https://landscape.canonical.com
 * Support:        https://ubuntu.com/advantage

2 packages can be updated.
0 updates are security updates.


Last login: Thu Feb  1 13:51:02 2018 from xx.yy.xx.yy
これを抑止するには、ホームディレクトリに.hushloginというファイルを作ります。この.hushloginはloginプロセスが参照しているようで、manに記述があります。
$ man login

       $HOME/.hushlogin
           Suppress printing of system messages.

$
上記のメッセージは以下のようにして作られているようです。
Ubuntu 14.04でSSHログイン時のメッセージをカスタマイズ
https://mistymagich.wordpress.com/2015/07/17/ubuntu-14-04%E3%81%A7ssh%E3%83%AD%E3%82%B0%E3%82%A4%E3%83%B3%E6%99%82%E3%81%AE%E3%83%A1%E3%83%83%E3%82%BB%E3%83%BC%E3%82%B8%E3%82%92%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA/

Ubuntu14.04ではSSHログイン時にPAMを使用している場合、/etc/pam.d/sshdの中で、pam_motdモジュールを使用して、/run/motd.dynamicファイルに書かれているものを出力しています。

/run/motd.dynamicはプログラムによって生成されており、元となるデータは/etc/update-motd.dディレクトリに数字_ファイル名というスクリプトファイルで存在しています。数字順に実行していき、標準出力された文字列を/run/motd.dynamicに出力しています。