Teil I Übersicht über die Sicherheit
1. Sicherheitsservices (Überblick)
Teil II System-, Datei- und Gerätesicherheit
2. Verwalten von Rechnersicherheit (Übersicht)
3. Steuern des Zugriffs auf Systeme (Aufgaben)
4. Steuern des Zugriffs auf Geräte (Aufgaben)
5. Verwenden von Basic Audit Reporting Tool (Aufgaben)
6. Steuern des Zugriffs auf Dateien (Aufgaben)
7. Verwenden von Automated Security Enhancement Tool (Aufgaben)
Teil III Rollen, Berechtigungsprofile und Berechtigungen
8. Verwenden von Rollen und Berechtigungen (Übersicht)
9. Rollenbasierte Zugriffssteuerung (Aufgaben)
10. Rollenbasierte Zugriffssteuerung (Übersicht)
Teil IV Kryptografische Services
13. Oracle Solaris Cryptographic Framework (Übersicht)
14. Oracle Solaris Cryptographic Framework (Aufgaben)
15. Oracle Solaris Key Management Framework
Teil V Authentifizierungsservices und sichere Kommunikation
16. Verwenden von Authentifizierungsservices (Aufgaben)
19. Verwenden von Oracle Solaris Secure Shell (Aufgaben)
20. Oracle Solaris Secure Shell (Referenz)
21. Einführung zum Kerberos-Service
22. Planen des Kerberos-Service
23. Konfigurieren des Kerberos-Service (Aufgaben)
24. Kerberos-Fehlermeldungen und -Fehlerbehebung
25. Verwalten von Kerberos-Hauptelementen und Richtlinien (Aufgaben)
26. Verwenden von Kerberos-Anwendungen (Aufgaben)
27. Der Kerberos-Service (Referenz)
Teil VII Prüfung bei Oracle Solaris
28. Prüfung bei Oracle Solaris (Übersicht)
29. Planen der Oracle Solaris-Prüfung
30. Verwalten der Oracle Solaris-Prüfung (Aufgaben)
Prüfung bei Oracle Solaris (Übersicht der Schritte)
Konfigurieren der Prüfdateien (Übersicht der Schritte)
Konfigurieren von Prüfdateien (Aufgaben)
So ändern Sie die Datei audit_control
So konfigurieren Sie syslog-Prüfprotokolle
So ändern Sie die Prüfmerkmale eines Benutzers
So fügen Sie eine Prüfklasse hinzu
So ändern Sie die Klassenmitgliedschaft eines Prüfereignisses
Konfigurieren und Aktivieren des Prüfservice (Übersicht der Schritte)
Konfigurieren und Aktivieren des Prüfservice (Aufgaben)
So erstellen Sie Partitionen für Prüfdateien
So konfigurieren Sie den E-Mail-Alias audit_warn
So konfigurieren Sie die Prüfrichtlinie
So aktivieren Sie den Prüfservice
So deaktivieren Sie den Prüfservice
So aktualisieren Sie den Prüfservice
Konfigurieren des Prüfservice in Zonen (Aufgaben)
So können Sie alle Zonen für die Prüfung identisch konfigurieren
So konfigurieren Sie eine zonenweise Prüfung
Verwalten der Prüfdatensätze (Übersicht der Schritte)
So zeigen Sie Prüfdatensatzformate an
So führen Sie Prüfdateien aus dem Prüfpfad zusammen
So wählen Sie Prüfereignisse aus dem Prüfpfad aus
So zeigen Sie den Inhalt der binären Prüfdateien an
Fehlerbehebung bei der Oracle Solaris-Prüfung (Aufgaben)
Fehlerbehebung bei der Oracle Solaris-Prüfung (Übersicht der Schritte)
So können Sie die Ausführung der Oracle Solaris-Prüfung feststellen
So verringern Sie den Umfang der erstellten Prüfdatensätze
So prüfen Sie alle Befehle der Benutzer
So suchen Sie nach Prüfdatensätzen der Änderungen an bestimmten Dateien
So ändern Sie die Vorauswahlmaske eines Benutzers
So verhindern Sie die Prüfung bestimmter Ereignisse
So beschränken Sie die Größe binärer Prüfdateien
So prüfen Sie Anmeldungen von anderen Betriebssystemen
So prüfen Sie FTP- und SFTP-Dateiübertragungen
Durch Verwalten des Prüfpfads können Sie die Aktionen der Benutzer im Netzwerk überwachen. Bei der Prüfung können umfangreiche Datenmengen generiert werden. In den folgenden Aufgaben erfahren Sie, wie Sie diese Daten verwenden.
Um Skripten zum Suchen der gewünschten Prüfdaten zu schreiben, müssen Sie die Reihenfolge der Token in einem Prüfereignis kennen. Der Befehl bsmrecord zeigt die Prüfereignisnummer, Prüfklasse, Auswahlmaske und das Datensatzformat eines Prüfereignisses an.
Durch die Option -a werden alle Formate der Prüfereignis-Datensätze aufgeführt. Durch die Option -h wird die Liste in das HTML-Format umgewandelt, das in einem Browser angezeigt werden kann.
% bsmrecord -a -h > audit.events.html
Wenn Sie die Datei *html in einem Browser anzeigen, verwenden Sie die Suchfunktion des Browsers, um die entsprechenden Datensätze zu suchen.
Weitere Informationen erhalten Sie auf der Manpage bsmrecord(1M).
Beispiel 30-26 Anzeigen der Prüfdatensatzformate eines Programms
In diesem Beispiel wird das Format aller Prüfdatensätze, die vom Programm login generiert wurden, angezeigt. Zu den Anmeldeprogrammen zählen rlogin, telnet, newgrp, Anmeldung für Aufgabenbereich an der Solaris Management Console und Oracle Solaris Secure Shell.
% bsmrecord -p login login: logout program various See login(1) event ID 6153 AUE_logout … newgrp program newgrp See newgrp login event ID 6212 AUE_newgrp_login … rlogin program /usr/sbin/login See login(1) - rlogin event ID 6155 AUE_rlogin … SMC: role login program SMC server See role login event ID 6173 AUE_role_login … /usr/lib/ssh/sshd program /usr/lib/ssh/sshd See login - ssh event ID 6172 AUE_ssh … telnet login program /usr/sbin/login See login(1) - telnet event ID 6154 AUE_telnet …
Beispiel 30-27 Anzeigen der Prüfdatensatzformate einer Prüfklasse
In diesem Beispiel wird das Format aller Prüfdatensätze in der Klasse fd angezeigt.
% bsmrecord -c fd rmdir system call rmdir See rmdir(2) event ID 48 AUE_RMDIR class fd (0x00000020) header path [attribute] subject [use_of_privilege] return unlink system call unlink See unlink(2) event ID 6 AUE_UNLINK … unlinkat system call unlinkat See openat(2) event ID 286 AUE_UNLINKAT …
Durch Zusammenführen aller Prüfdateien in allen Prüfverzeichnissen können Sie den Inhalt des gesamten Prüfpfads analysieren. Durch den Befehl auditreduce werden alle Datensätze aus den zugehörigen Eingabedateien in eine einzige Ausgabedatei zusammengeführt. Die Eingabedateien können anschließend gelöscht werden. Wenn Sie die Ausgabedatei in ein Verzeichnis mit dem Namen /etc/security/audit/server-name /files hinzufügen, kann durch den Befehl auditreduce die Ausgabedatei gefunden werden, ohne dass der vollständige Pfad angegeben werden muss.
Hinweis - Dieses Verfahren gilt nur für binäre Prüfdatensätze.
Beispielsweise beinhaltet die Rolle des Systemadministrators das Profil "Audit Review". Außerdem können Sie eine separate Rolle erstellen, die das Profil "Audit Review" enthält. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie unter Konfigurieren von RBAC (Übersicht der Schritte).
# mkdir audit-trail-directory
# chmod 700 audit-trail-directory # ls -la audit-trail-directory drwx------ 3 root sys 512 May 12 11:47 . drwxr-xr-x 4 root sys 1024 May 12 12:47 ..
Wechseln Sie in das Verzeichnis audit-trail-directory und führen Sie die Prüfdatensätze in eine Datei mit einem benannten Suffix zusammen. Es werden alle Verzeichnisse, die in den Zeilen dir der Datei audit_control auf dem lokalen System aufgeführt sind, zusammengeführt.
# cd audit-trail-directory # auditreduce -Uppercase-option -O suffix
Durch die Optionen in Großbuchstaben des Befehls auditreduce werden die Dateien im Prüfpfad bearbeitet. Folgende Optionen in Großbuchstaben sind vorhanden:
Wählt alle Dateien im Prüfpfad aus
Wählt nur abgeschlossene Dateien aus. Durch diese Option werden Dateien mit dem Suffix not_terminated ignoriert.
Wählt Dateien mit einem bestimmten Suffix. Das Suffix kann einen Rechnernamen darstellen oder für eine Zusammenfassungsdatei angegeben worden sein.
Erstellt eine Prüfdatei mit den aus 14 Zeichen bestehenden Zeitstempeln für die Start- und Endezeit mit dem Suffix suffix im aktuellen Verzeichnis.
Beispiel 30-28 Kopieren der Prüfdateien in eine Zusammenfassungsdatei
Im folgenden Beispiel werden durch die Rolle "System Administrator" (sysadmin) alle Dateien aus dem Prüfpfad in eine zusammengeführte Datei kopiert.
$ whoami sysadmin $ mkdir /var/audit/audit_summary.dir $ chmod 700 /var/audit/audit_summary.dir $ cd /var/audit/audit_summary.dir $ auditreduce -A -O All $ ls *All 20100827183214.20100827215318.All
Im folgenden Beispiel werden nur abgeschlossene Dateien vom Prüfpfad in eine zusammengeführte Datei kopiert.
$ cd /var/audit/audit_summary.dir $ auditreduce -C -O Complete $ ls *Complete 20100827183214.20100827214217.Complete
Im folgenden Beispiel werden nur abgeschlossene Dateien vom Rechner example1 in eine zusammengeführte Datei kopiert.
$ cd /var/audit/audit_summary.dir $ auditreduce -M example1 -O example1summ $ ls *summ 20100827183214.20100827214217.example1summ
Beispiel 30-29 Verschieben der Prüfdateien in eine Zusammenfassungsdatei
Die Option -D des Befehls auditreduce löscht eine Prüfdatei, wenn Sie sie an einen anderen Speicherort kopieren. Im folgenden Beispiel werden die abgeschlossenen Prüfdateien aus einem System in das Zusammenfassungsverzeichnis kopiert und können zu einem späteren Zeitpunkt untersucht werden.
$ cd /var/audit/audit_summary.dir $ auditreduce -C -O daily_example1 -D example1 $ ls *example1 20100827183214.20100827214217.daily_example1
Die Prüfdateien aus dem System example1, die als Eingabe für die Datei *daily_example1 verwendet wurden, werden bei erfolgreichem Abschluss dieses Befehls entfernt.
Sie können Prüfdatensätze filtern und sie anschließend untersuchen. Eine vollständige Liste der Filterungsoptionen erhalten Sie auf der Manpage auditreduce(1M).
Beispielsweise beinhaltet die Rolle des Systemadministrators das Profil "Audit Review". Außerdem können Sie eine separate Rolle erstellen, die das Profil "Audit Review" enthält. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie unter Konfigurieren von RBAC (Übersicht der Schritte).
auditreduce -lowercase-option argument [optional-file]
Bestimmtes Argument, das für eine Option in Kleinbuchstaben erforderlich ist. Beispiel: Für die Option -c ist ein argument einer Prüfklasse wie ua erforderlich.
Wählt alle Ereignisse eines bestimmten Datums aus. Das Datumsformat für argument lautet yyymmdd. Durch andere Datumsoptionen (-b und -a) werden Ereignisse vor und nach einem bestimmten Datum ausgewählt.
Wählt alle Ereignisse, die einem bestimmten Benutzer zugewiesen werden können. Das argument ist ein Benutzername. Durch eine andere Benutzeroption (-e) werden alle Ereignisse, die einer effektiven Benutzer-ID zugewiesen werden können, ausgewählt.
Wählt alle Ereignisse in einer im Voraus ausgewählten Prüfklasse aus. Das argument ist ein Prüfklassenname.
Wählt alle Instanzen eines bestimmten Prüfereignisses. Das argument ist ein Prüfereignis.
Entspricht dem Namen einer Prüfdatei
Beispiel 30-30 Kombinieren und Verringern von Prüfdateien
Durch den Befehl auditreduce können Sie die weniger interessanten Datensätze löschen, indem die Eingabedateien kombiniert werden. Beispielsweise können Sie mit dem Befehl auditreduce nur die Anmelde- und Abmeldedatensätze in Prüfdateien behalten, die älter als ein Monat sind. Wenn Sie den gesamten Prüfpfad anzeigen möchten, können Sie ihn von einem Backup-Datenträger wiederherstellen.
# cd /var/audit/audit_summary.dir # auditreduce -O lo.summary -b 20100827 -c lo; compress *lo.summary
Beispiel 30-31 Kopieren der na-Prüfdatensätze in eine Zusammenfassungsdatei
In diesem Beispiel werden alle Datensätze der nicht zuweisbaren Prüfereignisse im Prüfpfad in einer Datei zusammengefasst.
$ whoami sysadmin $ cd /var/audit/audit_summary.dir $ auditreduce -c na -O nasumm $ ls *nasumm 20100827183214.20100827215318.nasumm
Die zusammengeführte Prüfdatei nasumm wird mit einem Zeitstempel aus Anfangs- und Enddatum der na-Datensätze versehen.
Beispiel 30-32 Suchen der Prüfereignisse in einer angegebenen Prüfdatei
Sie können Prüfdateien manuell auswählen, um nur nach dem benannten Satz von Dateien zu suchen. Beispielsweise können Sie die Datei *nasumm im vorherigen Beispiel weiter verarbeiten, um Systemboot-Ereignisse zu suchen. Geben Sie dazu den Dateinamen als letztes Argument für den Befehl auditreduce an.
$ auditreduce -m 113 -O systemboot 20100827183214.20100827215318.nasumm 20100827183214.20100827183214.systemboot
Die Datei 20100827183214.20100827183214.systemboot enthält nur Systemboot-Prüfereignisse.
Beispiel 30-33 Kopieren der Prüfdatensätze eines Benutzers in eine Zusammenfassungsdatei
In diesem Beispiel werden die Datensätze im Prüfpfad, die den Namen eines bestimmten Benutzers enthalten, zusammengeführt. Durch die Option -e wird der effektive Benutzer gesucht. Durch die Option -u wird der Prüfungsbenutzer gesucht.
$ cd /var/audit/audit_summary.dir $ auditreduce -e tamiko -O tamiko
Sie können nach bestimmten Ereignissen in dieser Datei suchen. Im folgenden Beispiel wird der Anmelde- und Abmeldezeitpunkt eines bestimmten Benutzers am 7. September 2010 überprüft. Nur die Dateien mit dem Benutzernamen als Dateisuffix werden überprüft. Die Kurzform des Datums lautet yyyymmdd.
# auditreduce -M tamiko -O tamikolo -d 20100907 -u tamiko -c lo
Beispiel 30-34 Kopieren ausgewählter Datensätze in eine einzelne Datei
In diesem Beispiel werden Anmelde- und Abmeldemeldungen für einen bestimmten Tag aus dem Prüfpfad ausgewählt. Die Meldungen werden in eine Zieldatei zusammengeführt. Die Zieldatei wird in einem anderen Verzeichnis als dem üblichen Stammverzeichnis der Prüfung gespeichert.
# auditreduce -c lo -d 20100827 -O /var/audit/audit_summary.dir/logins # ls /var/audit/audit_summary.dir/*logins /var/audit/audit_summary.dir/20100827183936.20100827232326.logins
Mit dem Befehl praudit können Sie den Inhalt binärer Prüfdateien anzeigen. Sie können für die Ausgabe des Befehls auditreduce eine Pipe-Verkettung durchführen oder eine bestimmte Prüfdatei lesen. Die Option -x eignet sich für eine weitere Verarbeitung.
Beispielsweise beinhaltet die Rolle des Systemadministrators das Profil "Audit Review". Außerdem können Sie eine separate Rolle erstellen, die das Profil "Audit Review" enthält. Informationen zum Erstellen von Rollen und Zuweisen von Rollen zu Benutzern finden Sie unter Konfigurieren von RBAC (Übersicht der Schritte).
In den folgenden Beispielen sehen Sie eine praudit-Ausgabe des gleichen Prüfereignisses. Die Prüfrichtlinie wurde so festgelegt, dass sie die Token sequence und trailer enthält.
Durch den Befehl praudit -s werden Prüfdatensätze im Kurzformat als ein Token pro Zeile angezeigt. Verwenden Sie die Option -l, um die Datensätze auf jeweils einer Zeile anzuzeigen.
$ auditreduce -c lo | praudit -s header,101,2,AUE_rlogin,,example1,2010-10-13 11:23:31.050 -07:00 subject,jdoe,jdoe,staff,jdoe,staff,749,749,195 1234 server1 text,successful login return,success,0 sequence,1298
Durch den Befehl praudit -r werden Prüfdatensätze im unverarbeiteten Format als ein Token pro Zeile angezeigt. Verwenden Sie die Option -l, um die Datensätze auf jeweils einer Zeile anzuzeigen.
$ auditreduce -c lo | praudit -r 21,101,2,6155,0x0000,192.168.60.83,1062021202,64408258 36,2026700,2026700,10,2026700,10,749,749,195 1234 192.168.60.17 40,successful login 39,0,0 47,1298
Durch den Befehl praudit -x werden Prüfdatensätze im XML-Format als ein Token pro Zeile angezeigt. Verwenden Sie die Option -l, um die XML-Ausgabe für einen Datensatz auf einer Zeile anzuzeigen.
$ auditreduce -c lo | praudit -x <record version="2" event="login - rlogin" host="example1" time="Wed Aug 27 14:53:22 PDT 2010" msec="64"> <subject audit-uid="jdoe" uid="jdoe" gid="staff" ruid="jdoe" rgid="staff" pid="749" sid="749" tid="195 1234 server1"/> <text>successful login</text> <return errval="success" retval="0"/> <sequence seq-num="1298"/> </record>
Beispiel 30-35 Drucken des gesamten Prüfpfads
Durch eine Pipe-Verkettung mit dem Befehl lp erfolgt die Ausgabe des gesamten Prüfpfads an den Drucker. Der Drucker sollte über eingeschränkten Zugriff verfügen.
# auditreduce | praudit | lp -d example.protected.printer
Beispiel 30-36 Anzeigen einer bestimmten Prüfdatei
In diesem Beispiel wird eine Zusammenfassungsdatei für die Anmeldung in einem Terminalfenster untersucht.
# cd /var/audit/audit_summary.dir/logins # praudit 20100827183936.20100827232326.logins | more
Beispiel 30-37 Umwandeln der Prüfdatensätze in XML-Format
In diesem Beispiel werden die Prüfdatensätze in das XML-Format konvertiert.
# praudit -x 20100827183214.20100827215318.logins > 20100827.logins.xml
Die *xml-Datei kann in einem Browser angezeigt werden. Der Inhalt der Datei kann durch ein Skript verarbeitet werden, um die entsprechenden Informationen zu extrahieren.
Allgemeine Fehler
Eine Meldung ähnlich der folgenden weist darauf hin, dass Sie nicht über ausreichende Berechtigungen zur Verwendung des Befehls praudit verfügen:
praudit: Can't assign 20090408164827.20090408171614.example1 to stdin.
In einigen Fällen wird ein Prüfdämon beendet, während die zugehörige Prüfdatei noch geöffnet ist, oder der Zugriff auf einen Server ist nicht mehr möglich. Dadurch muss der Rechner zu einem neuen Server wechseln. In diesen Fällen erhält eine Prüfdatei die Zeichenfolge not_terminated als Ende-Zeitstempel, obwohl die Datei nicht mehr für Prüfdatensätze verwendet wird. Verwenden Sie den Befehl auditreduce -O, damit die Datei den richtigen Zeitstempel erhält.
# ls -R1t audit-directory*/files/* | grep not_terminated
Führt die Dateien in Unterverzeichnissen auf
Führt die Dateien angefangen von der neuesten bis zur ältesten Datei auf
Führt die Dateien in einer Spalte auf
Geben Sie den Namen der alten Datei für den Befehl auditreduce -O an.
# auditreduce -O system-name old-not-terminated-file
# rm system-name old-not-terminated-file
Beispiel 30-38 Bereinigen der geschlossenen Prüfdateien des Typs not_terminated
Im folgenden Beispiel werden Dateien des Typs not_terminated gesucht, umbenannt und die Originale anschließend entfernt.
ls -R1t */files/* | grep not_terminated …/egret.1/20100908162220.not_terminated.egret …/egret.1/20100827215359.not_terminated.egret # cd */files/egret.1 # auditreduce -O egret 20100908162220.not_terminated.egret # ls -1t 20100908162220.not_terminated.egret Current audit file 20100827230920.20100830000909.egret Input (old) audit file 20100827215359.not_terminated.egret # rm 20100827215359.not_terminated.egret # ls -1t 20100908162220.not_terminated.egret Current audit file 20100827230920.20100830000909.egret Cleaned up audit file
Der Start-Zeitstempel der neuen Datei gibt den Zeitpunkt des ersten Prüfereignisses in der Datei not_terminated an. Der Ende-Zeitstempel gibt den Zeitpunkt des letzten Prüfereignisses in der Datei an.
Gehen Sie wie folgt vor, wenn die Sicherheitsrichtlinie ein Speichern aller Prüfdaten erfordert:
Archivieren Sie die Prüfdateien, indem Sie ein Backup der Dateien auf Offline-Datenträgern erstellen. Außerdem können Sie die Dateien auf ein Dateisystem für die Archivierung verschieben.
Wenn Sie Prüfprotokolle im Textformat mithilfe des Dienstprogramms syslog erfassen, archivieren Sie die Textprotokolle. Weitere Informationen erhalten Sie auf der Manpage logadm(1M).
Archivieren Sie Informationen, die zum Interpretieren der Prüfdatensätze zusammen mit dem Prüfpfad erforderlich sind.
Sie können Zusammenfassungsdateien aus dem Prüfpfad extrahieren, indem Sie Optionen für den Befehl auditreduce verwenden. Die Zusammenfassungsdateien enthalten nur Datensätze für bestimmte Typen von Prüfereignissen. Weitere Informationen zum Extrahieren der Zusammenfassungsdateien erhalten Sie unter Beispiel 30-30 und Beispiel 30-34.