I have a Linux machine and I want it to show the current IP in the banner that shows before the login prompt is displayed. How can I do that? I considered making a startup script that finds the IP in the MOTD, but found that the MOTD gets displayed only after the person logged in, and I need the message to show before the person logged in.
If it matters, this is CentOS, I think version 6.
If you want to show the IP address in the
/etc/issue
, then you may be able to use\4
, or\4{eth0}
in the issue file. This certainly works in CentOS 7, and Ubuntu 16.04 and later. To show your IPv6 address, then use\6
.For example:
will be replaced by
IP:
then your IP address.Other
\
escape sequences that are supported are documented in man agettyI've done this in the past by editing
/etc/issue
. The following script runs on boot, which detects the current IP and then adds it to/etc/issue
:This script was written for Debian-based systems, but it should be easy enough to make some slight modifications for RHEL-based systems.
Depending on your system, those files are probably going to be
/etc/issue
and/or the file defined asBanner
in/etc/ssh/sshd_config
. However, I'm almost positive that those are strictly text files, so you would have to figure out your IP address and create the file.(Update:
/etc/issue
is not strictly a text file. It has a few escape characters that expand to system information, but IP address is not among them.)That leads to your next problem, how to find your machine's IP address, which is not necessarily an easy task.