SSH-приветствие в Debian

  2016-02-03 12:11:21

Каждый раз при SSH подключении к серверу на экране отображается стандартное сообщение, которое содержит информацию о последнем входе в систему и информацию про отказ от ответственности. Вместо того что бы при каждой авторизации созерцать на бесполезную с точки зрения администрирования информацию, предлагаю ее заменить на что-нибудь более информативное. Не знаю как вы, а я первым делом при входе на сервер выполняю команду top. Связи с чем, мне было бы удобно видеть интересующую меня информацию сразу при входе на сервер.

Команда для быстрой очистки файла, содержащего текст про отказ от ответственности:

cat /dev/null > /etc/motd

Для отображения интересующей меня информации мы будем использовать скрипт, который будет запускаться при каждом входе в систему. В примере ниже скрипт выводит информацию о нагрузке на процессор, использование оперативной памяти и файловой системы, аптайм сервера. В зависимости от ваших потребностей, вы можете добавить или удалить необходимую для вас информацию.

 
SystemMountPoint="/";
LinesPrefix=" ";
b=$(tput bold); n=$(tput sgr0);
 
SystemLoad=$(cat /proc/loadavg | cut -d" " -f1);
ProcessesCount=$(cat /proc/loadavg | cut -d"/" -f2 | cut -d" " -f1);
 
MountPointInfo=$(/bin/df -Th $SystemMountPoint 2>/dev/null | tail -n 1);
MountPointFreeSpace=( \
$(echo $MountPointInfo | awk '{ print $6 }') \
$(echo $MountPointInfo | awk '{ print $3 }') \
);
UsersOnlineCount=$(users | wc -w);
 
UsedRAMsize=$(free | awk 'FNR == 3 {printf("%.0f", $3/($3+$4)*100);}');
 
SystemUptime=$(uptime | sed 's/.*up \([^,]*\), .*/\1/');
 
if [ ! -z "${LinesPrefix}" ] && [ ! -z "${SystemLoad}" ]; then
echo -e "${LinesPrefix}${b}System load:${n}\t${SystemLoad}\t\t\t${LinesPrefix}${b}Processes:${n}\t\t${ProcessesCount}";
fi;
 
if [ ! -z "${MountPointFreeSpace[0]}" ] && [ ! -z "${MountPointFreeSpace[1]}" ]; then
echo -ne "${LinesPrefix}${b}Usage of $SystemMountPoint:${n}\t${MountPointFreeSpace[0]} of ${MountPointFreeSpace[1]}\t\t";
fi;
echo -e "${LinesPrefix}${b}Users logged in:${n}\t${UsersOnlineCount}";
 
if [ ! -z "${UsedRAMsize}" ]; then
echo -ne "${LinesPrefix}${b}Memory usage:${n}\t${UsedRAMsize}%\t\t\t";
fi;
echo -e "${LinesPrefix}${b}System uptime:${n}\t${SystemUptime}";
view raw sshinfo.sh hosted with ❤ by GitHub


Для того что бы скрипт автоматически запускался при успешной авторизации пользователя, его необходимо добавить в директорию /etc/profile.d и дать право на запуск:

 

nano /etc/profile.d/sshinfo.sh
chmod +x /etc/profile.d/sshinfo.sh

По материалам сайта: https://codebeer.ru/izmenit-ssh-privetstvie-v-debian/