
Wie kann ich rsyslog
die Protokollierung von in einer SSH-Sitzung eingegebenen Befehlen einrichten?
Nur für den Fall, dass sich jemals jemand Unbefugtes Zugriff auf das System verschafft, würde ich gerne wissen, was er getan hat.
Antwort1
Für mich klingt es so, als ob Sie überwachen möchten, was ein Benutzer tut, nachdem er sich bei Ihrem Server angemeldet hat. Dies ist eigentlich eher eine Funktion der Shell, die Ihr Benutzer ausführt (z. B. Bash).
Kassehttps://askubuntu.com/questions/93566/how-to-log-all-bash-commands-by-all-users-on-a-server
Sie können wahrscheinlich dasselbe für jeden Benutzer verwenden, der sich remote anmeldet.
Antwort2
Derzeit gibt es hierfür nicht viele leicht verfügbare Optionen.
Einige meiner Kollegen beiLawrence Berkeley National Lab (LBNL)haben eine Reihe von Patches für OpenSSH veröffentlicht als Teil ihrerAuditing-SSHDProjekt. Der Code ist offen und unter der Lizenz „BSD Simplified“ verfügbar. auditing-sshd
protokolliert alle Tastenanschläge eines Benutzers sowie eine Menge anderer Metainformationen über die SSH-Transaktion. Die Daten werden per Syslog/Stunnel an ein zentrales IDS gesendet. Einige Shell-basierte Auditing-Tools können über die Befehlszeile umgangen werden. Da der Code in OpenSSH eingebettet ist, kann der Angreifer das Tool bei Verwendung von SSH nicht umgehen.
Siehe das LISA 2011-Papier und die Folien. Der Zweck dieser Patches besteht darin, die Prüfung von Benutzersitzungen in akademischen und offenen Forschungsumgebungen zu ermöglichen, in denen die Prüfungerforderlichals Teil der Site-Sicherheitsrichtlinie und der Datenschutzrichtlinie für die Benutzer gut verständlich ist.
Allerdings sind Binärpakete nicht ohne Weiteres verfügbar und die Software ist für Administratoren gedacht, die die Patches in die OpenSSH-Quelle einspielen und ihre eigenen Pakete erstellen können.
Notiz:Ich bin mit diesem Projekt verbunden.Ich arbeite bei LBNL, kenne die Autoren persönlich und verwende diese Software regelmäßig.