Linux
停止從客戶端列印 motd 的 ssh 登錄?
我已經設置了 SSH 無密碼設置,但是它在登錄時會列印 MoTD。有沒有辦法阻止從客戶端發生這種情況?
我試過
ssh -q
了,但這不起作用。我不想使用~/.hushlogin
也不想更改伺服器設置。唯一可行的方法是使所有輸出安靜,使用>/dev/null 2>&1
. 但是,如果確實存在問題,我不想忽略錯誤。即使做>/dev/null
也不起作用,因為ssh
似乎將 motd 列印到 stderr。更新和推理我在 cron 中執行備份。除非發生錯誤,否則我不想收到 cron 電子郵件。但是,如果列印了 motd,我會一直收到一封電子郵件。
我想繼續列印 motd,因為這具有法律含義。motd 說“禁止未經授權的訪問”。您需要在其中包含此類聲明以合法地阻止人們訪問它(例如禁止擅自進入的標誌)。因此,我不想一直全面禁用它。
我不確定您為什麼不願意正確執行此操作-無論是在伺服器上還是在 la
PrintMotd no PrintLastLog no
和
#/etc/pam.d/ssh # Print the message of the day upon successful login. # session optional pam_motd.so
或者為每個使用者添加 ~/.hushlogin。
提示,對於 ~/.hushlogin,將其添加到 /etc/skel 以便使用該文件創建新的使用者主目錄。
更新:
如果沒有有關備份 cron 作業的更多資訊,我唯一的其他建議是將命令的輸出重定向到文件(或讓 cron 在電子郵件中擷取它)並將 ssh 會話的輸出重定向到 /dev/null。就像是:
0 0 * * * ssh backuphost "backup_script_that_writes_to_a_log" >/dev/null
要麼
0 0 * * * ssh backuphost "backup_command 2>&1" >/dev/null
我必須稍微玩弄一下這些命令,但這應該能讓你開始。