修改 SSH 欢迎消息以包含系统 IP 地址

mis*_*lkr 49 ssh customization login ip-address

我曾有几次无法记住给定系统的 IP 地址,但当时能够使用主机名进行连接。举个例子,刚才我想在我的路由器上设置端口转发,但不记得目标系统的 IP。

我想知道是否可以将系统的 IP 地址添加到显示在 SSH 连接上的欢迎消息中。

如果该术语不明确,我尝试修改的默认欢迎消息是“

Linux [hostname] 2.6.35-32-generic #64-Ubuntu SMP Tue Jan 3 00:47:07 UTC 2012 x86_64 GNU/Linux

Ubuntu 10.10

Welcome to Ubuntu!
    * Documentation:  https://help.ubuntu.com/
Run Code Online (Sandbox Code Playgroud)

在那里的某个地方,我想添加我刚刚登录的系统的 IP 地址。有什么建议?除了在我的大脑中交易具有更多 RAM 的更新模型之外?

roa*_*dmr 64

您所指的消息是“motd”或“今日消息”。它包含在/etc/motd.

这是由 update-motd 生成的,其文档在这里:https : //wiki.ubuntu.com/UpdateMotd#Design

请参阅此相关问题:如何编辑 ssh motd?

要直接回答您的问题,您可以添加一个/etc/update-motd.d/50-ip-address包含以下内容的文件:

#!/bin/bash
ifconfig |grep "inet addr"
Run Code Online (Sandbox Code Playgroud)

这将非常简单地将系统上所有已配置的 Internet 地址添加到 motd 文件中。

motd 在“每次登录时”更新(根据man update-motd)。您可以将数字作为脚本名称的第一部分来决定 IP 地址出现的顺序。

由于其中的文件/etc/update-motd.d只是 shell 脚本,因此您可以根据需要编写简单或复杂的内容。

  • 要测试无需再次登录的情况,请运行 `sudo run-parts /etc/update-motd.d/`。虽然要在下次登录时看到更改,但必须在上次编辑后大约 10 分钟左右。或者尝试登录几次,直到看到它。 (2认同)

amc*_*amc 20

这可能比您想要/需要的要多,但该landscape-common软件包会自动将系统信息(包括 IP 地址)添加到 MOTD。

Welcome to Ubuntu 16.04 LTS (GNU/Linux 4.4.0-28-generic x86_64)

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

  System information as of Tue Jul 12 10:21:51 MDT 2016

  System load:  0.09                Users logged in:        1
  Usage of /:   12.3% of 225.17GB   IP address for enp7s0:  192.168.X.XXX
  Memory usage: 45%                 IP address for wlp9s1:  192.168.X.XXX
  Swap usage:   0%                  IP address for docker0: 172.17.0.1
  Processes:    397

  Graph this data and manage this system at:
    https://landscape.canonical.com/

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

Last login: Tue Jul 12 10:03:16 2016 from 192.168.X.XXX
Run Code Online (Sandbox Code Playgroud)

具体来说,它/usr/share/landscape/landscape-sysinfo.wrapper/etc/update-motd.d/目录中添加了一个符号链接。