Ich habe ein CentOS 5.7 VPS mit bash als Shell, das unmittelbar nach der Anmeldung über SSH eine markenbezogene Begrüßung anzeigt. Ich habe versucht, es zu ändern, kann aber an den üblichen Stellen scheinbar nicht feststellen, wo es sich befindet. Bisher habe ich in die motd
Datei geschaut und sshd_config
nach Einstellungen für Bannerdateien gesucht . Eine Bannerdatei ist nicht festgelegt.
Wo kann ich sonst nachsehen, wo sich die Login-Nachricht befinden könnte?
grep
in/etc
einigen Teilmengen der Nachricht./
, dauert ewig auf einer 1-TB-Festplatte, lassen Sie mich sagen ... Aber ich war noch nie auf Twitter :)Antworten:
Herkömmliche Unix-Systeme werden angezeigt,
/etc/motd
nachdem der Benutzer erfolgreich authentifiziert wurde und bevor die Shell des Benutzers aufgerufen wird. Bei modernen Systemenpam_motd
übernimmt dies das PAM-Modul, das in/etc/pam.conf
oder/etc/pam.d/*
zur Anzeige einer anderen Datei konfiguriert werden kann.Der SSH-Server selbst kann so konfiguriert werden, dass er druckt,
/etc/motd
wenn diePrintMotd
Option in nicht deaktiviert ist/etc/sshd_config
. Es kann auch die Zeit der vorherigen Anmeldung drucken, wennPrintLastLog
nicht deaktiviert ist.Eine andere traditionelle Nachricht könnte Ihnen sagen, ob das
You have new mail
oderYou have mail
. Bei Systemen mit PAM übernimmt dies daspam_mail
Modul. Einige Shells drucken möglicherweise eine Nachricht über verfügbare E-Mails.Nachdem die Shell des Benutzers gestartet wurde, werden in den Startdateien des Benutzers möglicherweise zusätzliche Nachrichten gedruckt. Für eine interaktive Anmeldung, wenn der Login - Shell des Benutzers eines Bourne-Shell - Stil ist, schaut in
/etc/profile
,~/.profile
plus~/.bash_profile
und~/.bash_login
für bash. Für eine interaktive Anmeldung zu zsh, Blick in/etc/zprofile
,/etc/zlogin
,/etc/zshrc
,~/.zprofile
,~/.zlogin
und~/.zshrc
. Um sich interaktiv bei csh anzumelden, schauen Sie in/etc/csh.login
und~/.login
.Wenn es sich bei der Anmeldeshell des Benutzers um eine Bash handelt und es sich um eine nicht interaktive Anmeldung handelt, wird die Bash ausgeführt
~/.bashrc
(was sehr merkwürdig ist, da sie~/.bashrc
nur für interaktive Shells ausgeführt wird, wenn die Shell keine Anmeldeshell ist). Dies kann zu Problemen führen. Ich empfehle, das folgende Snippet oben~/.bashrc
in das Hilfsprogramm einzufügen, wenn die Shell nicht interaktiv ist:quelle
.bash_profile
sendet nur eine Nachricht an sich selbst. Einige Leute sehen gerne nützliche oder lustige Nachrichten, wenn sie sich anmelden. Ich kann nicht für das Root-Konto Ihres Systems sprechen, da ich weder den Inhalt der Nachricht noch die beteiligten Personen und Einstellungen kenne.Es gibt ein paar:
zusätzlich
Möglicherweise müssen Sie auch jedes Programm durchgehen, das von diesen Skripten aus aufgerufen wird, da so etwas wie
fortune
das Speichern der darin angezeigten Quips möglich ist/usr/share
. Um es zu isolieren, können Sie Folgendes tun:Auf Ubuntu gibt es auch Datei:
quelle
/etc/issue
wird traditionell angezeigt, bevor sich ein Benutzer anmeldet, nicht danach.profile
undprofile.d
. Leider haben alle vier Vorschläge nichts ergeben. Ich frage mich, ob etwas Benutzerdefiniertes in die Bash-Binärdatei kompiliert wurde ...?Neuere Systeme speichern die MOTD-Komponenten
/etc/update-motd.d
so, dass verschiedene Makros ausgeführt werden können, um die MotD so anzupassen, dass beim Anmelden Aktualisierungsinformationen, Systemwarnungen usw. angezeigt werden.Fügen Sie Ihre Anpassung als eine andere Datei mit der Priorität von
00
bis hinzu99
99-footer
/etc/motd.tail
Wird normalerweise geladen, wenn das Anheften am Ende ausreicht und Sie keine der Makroelemente verwenden möchten.quelle
Sie könnten reingucken
/etc/shell
, dort habe ich eine Nachricht gefunden, die ich ändern wollte. Das Auskommentieren mit einem "#" funktioniert nicht. Sie müssen lediglich einen beliebigen Text löschen und einen eigenen hinzufügen. Auch Leerzeichen und neue Zeilen werden angezeigt, wenn Sie sie in die Datei einfügen.quelle