Как изменить SSH-приветсвие под Ubuntu

Original author: The Geek
  • Translation
Каждый раз, когда я подключаюсь к моему Ubuntu по SSH, я вижу одно и то же унылое сообщение:
Linux superfast 2.6.20-16-generic #2 SMP Thu Jun 7 19:00:28 UTC 2007×86_64

The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.

Last login: Mon Aug 13 01:05:46 2007 from ipaddress removed

geek@superfast:~$

Вот как его можно изменить. Надо будет отредактировать пару файлов.
Первые три абзаца этой «телеги» лежат тут:
/etc/motd
Номер билда и отказ от гарантий — информация для меня не слишком полезная, я просто заменил это всё.
Чтобы отключить сообщение о последнем входе (что я не рекомендую делать), надо отредактировать вот этот файл:
/etc/ssh/sshd_config
Найдите вот эту опцию и замените yes на no:
PrintLastLog no
Теперь, когда вы будете входить, вы этого сообщения не увидите. Из соображений безопасности всё же не рекомендую так делать.
Вот как выглядит мой логин теперь:
This is a superfast system. Please max out the cpu accordingly.

Last login: Mon Aug 13 01:24:14 2007 from ipaddress removed
geek@superfast:~$

Linux крут.
Share post

Similar posts

Comments 23

    0
    Хоть и прописные истины, но новичкам я думаю будет полезно. :)
      0
      Думаю тег ubuntu, и в теме тоже - не совсем уместно)
        –1
        > This is a superfast system.

        Ну вот, красноглазые на хабре.
          0
          Поясните для танкистов, пожалуйста.
            +1
            устроили детский сад какой-то, вот и все пояснение.
          0
          А это как0то специфично для убунту? Или тег поставлен из-за популярности последней?
            0
            Это, изволите ли видеть, перевод. Не смею присваивать авторство. Тэги ставятся по контенту.
            +1
            Вместо "Ubuntu" читаем "Linux" и все становится на свои места )
              0
              Предлогаю постить варианты текстов приветствий :-)
              У меня, например, на боевом сервере:

              ALERT! You are entering a secured area! Your IP and login information
              have been recorded. System administration has been notified.
              This system is restricted to authorized access only. All activities on
              this system are recorded and logged. Unauthorized access will be fully
              investigated and reported to the appropriate law enforcement agencies.

              Больше для прикола конечно, но может отпугнет кого если что.
                +1
                Ну да ну да, кто-то совершенно случайно, мимо проходя похакал твой сервер и испугался
                этой злобной надписи ;)
                +1
                Мое приветствие звучит примерно так: connect to host xxx.xxx.xxx.xxx port 22: Connection refused
                  0
                  Вы не поверите, но ascii-art тут уместен как нигде.

                  А кто скажет как поцепить свой скрипт на место motd? Хочу с БОРа цитаты из ТОП100 отображать
                    0
                    прописать скрипт в crontab?
                    +7
                    Немного не то что я ожидал увидеть. Я думал, что ssh приветствие - это command prompt, а тут рассказывается о баннере. исправим и расскажем что такое command prompt.

                    command prompt - это текстовая строка с информацией, выводимой перед вводом любой команды в командном интерпретаторе, вы наверно ее видели.

                    de:~# ls
                    file
                    de:~#

                    как и все в линуксе, ее можно настроить. отвечает за вид приглашения переменная окружения PS1.
                    посмотреть ее текущее состояние -
                    echo $PS1
                    а изменить -
                    export PS1="..."

                    этого уже достаточно для того чтобы сменить прглашение, например
                    de:~ export PS1=\> (> является спецсимволом и его надо экранировать)
                    >
                    , однако это не все, в приглашении можно использовать спец-символы, которые во время выполнения заменяются на системные переменные, например

                    \s - используемый шелл
                    \v - версия шелла
                    \u - имя текущего пользователя
                    \h - имя хоста
                    \w - текущая директория
                    \t - время
                    \d - дата
                    ... и некоторые еще


                    и разумеется, эти переменные можно комбинировать
                    >export PS1="\h \w>" (учтите, что если в приветствии есть пробелы, то либо все приветствие надо заключать в кавычки, либо экранировать пробелы)
                    de ~>


                    настройки будут действительны для текущей сессии. для того чтобы сделать их глобальными - запиште команду установки приглашения в /etc/profile, для того чтобы сделать их "настройками по умолчанию для новых пользователей", запишите их в /etc/skel/.bashrc , а для того чтобы установить их для своего сеанса - запишите в $HOME/.profile


                    все что тут было написано - ориентировалось на bash, однако работают и в других шеллах, например в zsh, который, кстати, обладает еще большими способностями, например автоматическим запуском внешней команды перед выполнением любого shell-действия, что, например, может использоваться для установки заголовка xterm-совместимых терминалов(putty в их числе).
                      +3
                      если быть до конца чистоплотными, то нельзя забывать что возможность смены приглашения есть и в Windows. За приглашение отвечает переменная PROMPT, просмотреть ее можно так
                      echo %PROMPT%
                      , сменить так
                      PROMPT=...
                      Как и везде, принимаются мета-символы

                      $D - дата
                      $G - знак >
                      $H - знак Backspace
                      $L - знак <
                      $N - текущий диск
                      $P - текущий диск+директория
                      $Q - знак равно
                      $S - один пробел
                      $T - время
                      $V - версия windows
                      $_ - перенос строки
                      $$ - знак доллара


                      По умолчанию, привестствие $P$G.
                      Как поставить установку шелла в автозагрузку пока не известно, возможно, настройки можно прописать в %WINDIR%\system32\autoexec.nt
                      –7
                      Поставил минус посту. Вы бы еще маны переводили и постили.
                        0
                        правильно поступил
                        man motd в убунте на русском )))

                        лучше б написали статью о мелких но полезных фишках) а то на каждый motd по статье - многовато

                        p.s. типа:
                        nano ~/.bashrc
                        раскоментируейте строку и приглашение в консоль станет цветным
                        PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$
                        '

                        nano /etc/inputrc
                        роскоментируйте эти строки и дополнять команды из истории можно будет клавишами "page up" and "page down"
                        "\e[5~": history-search-backward
                        "\e[6~": history-search-forward

                        автору статьи - читать маны)))
                        +1
                        А ещё можно написать в /etc/ssh/sshd_config
                        PrintMotd no

                        и его вообще не будет видно.
                          0
                          Что-то странное у меня

                          $ grep -i motd /etc/ssh/sshd_config
                          PrintMotd no


                          И в то же время

                          $ ssh 127.0.0.1
                          self@127.0.0.1's password:
                          Linux Amber 2.6.17-12-generic #2 SMP Mon Jul 16 19:37:58 UTC 2007 i686

                          The programs included with the Ubuntu system are free software;
                          the exact distribution terms for each program are described in the
                          individual files in /usr/share/doc/*/copyright.

                          Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
                          applicable law.
                          Last login: Wed Aug 15 20:30:01 2007 from 89-178-102-179.broadband.corbina.ru
                          [20:34:30]:~$


                          Как такое может быть? o_O
                            0
                            после редактирования конфига нужно перезапустить sshd:
                            (не знаю как в Ubuntu, но у меня в Debian) # invoke-rc.d sshd restart
                              0
                              Ну ясен пень что надо перезапускать. PrintMotd no у меня стоял по дефолту, я его не менял. А вот если поставить в yes и перезапустить sshd получается

                              $ ssh 127.0.0.1
                              self@127.0.0.1's password:
                              Linux Amber 2.6.17-12-generic #2 SMP Mon Jul 16 19:37:58 UTC 2007 i686

                              The programs included with the Ubuntu system are free software;
                              the exact distribution terms for each program are described in the
                              individual files in /usr/share/doc/*/copyright.

                              Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
                              applicable law.
                              Last login: Wed Aug 15 20:37:28 2007 from localhost
                              Linux Amber 2.6.17-12-generic #2 SMP Mon Jul 16 19:37:58 UTC 2007 i686

                              The programs included with the Ubuntu system are free software;
                              the exact distribution terms for each program are described in the
                              individual files in /usr/share/doc/*/copyright.

                              Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
                              applicable law.
                              [20:39:18]:~$
                                0
                                Значит, motd выводится не sshd, а из /etc/profile, /etc/bashrc или как там называется начальный скрипт шелла в Ubuntu.
                        • UFO just landed and posted this here

                          Only users with full accounts can post comments. Log in, please.