MonthAugust 2009

openssl CSR generieren

Ein Post, nur weil ich selber immer vergesse wie das geht.

Also, zuerst einen Private Key für den Server generieren:

openssl genrsa -out domainname.key 2048

Wer gerne noch einen Passpharse dazu haben möchte schreibt:

openssl genrsa -des3 -out domainname.key 2048

Mit dem Key kann dann der CSR erstellt werden:

openssl req -new -sha256 -key domainname.key -out domainname.csr

Danach ist das .csr File fertig. Natürlich muss der Private Key geheim bleiben, sonst kann jeder das selbe Zertifikat ausstellen und das ist – nicht gut.

Dateiattribute unter Linux

Wenn man Linux mit Ext 2 oder 3 betreibt, kann man den Dateien ganz lustige Attribute setzen. Diese können unter anderem verhindern, das ein File verändert, gelöscht oder ungenügend gelöscht werden kann. Eine Auflistung aller Attribute mal vorweg:

  • a Append only. Zu Dateien mit diesem Attribut können nur noch Daten hinzugefügt werden.
  • A No atime update. Wenn dieses Attribut gesetzt ist und auf die Datei zugegriffen wird, wird die atime nicht geupdated, was manchmal zu mehr Geschwindigkeit führen kann.
  • D Änderungen in einem Ordner der dieses Attribut gesetzt hat, werden sofort auf die Harddisk geschrieben.
  • i Immutable. Wenn dieses Attribut gesetzt ist, kann die entsprechende Datei nicht mehr verändert oder gelöscht werden. Berechtigungen können auch nicht mehr verändert werden und es können keine Links zu dieser Datei erstellt werden.
  • s Wenn eine Datei mit gesetztem s gelöscht wird, wird sie mit Nullen überschrieben.
  • S Diese Datei wird sofort auf die Festplatte geschrieben, das selbe wie die sync Option, aber nur gezielt.
  • u Wird diese Datei gelöscht, behält das System die Daten auf der Platte, kann also wiederhergestellt werden.

Diese Liste ist nicht vollständig, allerdings sind die anderen Flags eher weniger zu gebrauchen, wer sie trotzdem sehen will, kann das hier machen.

Mit lsattr kann man sehen, welche Attribute bei einer Datei gesetzt sind, mit chattr kann man die Attribute ändern, z.B. so:

host:~# touch test  # test Datei erstellen
host:~# lsattr test
------------------- test # Keine Attribute gesetzt
host:~# chattr +i test # "Unlöschbar" machen
host:~# lsattr test
----i-------------- test # "Immutable" gesetzt
host:~# rm test
rm: cannot remove `test': Operation not permitted # Ooops, geht nicht..
host:~# chattr -i test # "Immutable" wieder weg nehmen
host:~# rm test
host:~# ls test
ls: cannot access test: No such file or directory # und weg
host:~#

Diese Attribute können nützlich sein, um ein System etwas sicherer zu machen. Wenn man z.B. das a Attribut auf Logdateien anwendet, können diese nicht mehr verändert, sondern nur noch ergänzt werden. Oder wenn i auf das gesamte /bin oder /sbin Verzeichnis angewandt wird, können die Programme nicht mehr verändert werden, dies kann vor RootKits o.ä. schützen, muss aber bei einem Systemupdate kurzfristig wieder rückgängig gemacht werden, da sonst die alten nicht mit den neuen Programmversionen überschrieben werden können.

Ausserdem können diese Attribute als root genau so schnell gelöscht wie gesetzt werden, wirkliche Sicherheit geben diese Attribute also nicht, aber sie können eine weitere Hürde auf dem Weg in das System sein.

XEN CD-Image im Betrieb wechseln

Wenn während der Installation eines HVM Gastes die CD gewechselt werden muss, geht das mit XEN bequem in der Konsole :)

Als erstes abchecken welche Blockdevices an der Maschiene angehängt sind:

dom0:# xm block-list -l <domain name>
(768
    ((backend-id 0)
        (virtual-device 768)
        (device-type disk)
        (state 1)
        (backend /local/domain/0/backend/vbd/31/768)
    )
)
(5632
    ((backend-id 0)
        (virtual-device 5632)
        (device-type cdrom)
        (state 1)
        (backend /local/domain/0/backend/vbd/31/5632)
    )
)

Die erste Nummer ist die “device number”, optimal ist nur ein CD-Rom attached, dann muss man die Nummer wählen die vor dem Block mit device-type cdrom steht, sonst muss man probieren. Wenn man weiss welches Gerät abgehängt werden muss, tut man dies mit:

dom0:# xm block-detach <domain name> <device number>

(ich musste jeweils noch -f mitgeben, sonst ist nichts passiert)

Danach das neue Image mit xm block-attach anhängen:

dom0:# xm block-attach <domain> file://path/to/image.iso /dev/hdc r

Natürlich kann file:// z.B. durch phy:// ersetzt werden, wenn man das physikalische CD-Rom anhängen möchte. Auch /dev/hdc kann verändert werden.

Zabbix Template für Dateiintegrität

Wenn die Server eh schon mit Zabbix überwacht werden, kann man damit auch gleich die Integrität von wichtigen Dateien checken. Dies hilft z.B. beim entdecken von Angriffen auf das System durch RootKits, welche oft Dateien manipulieren um sich selbst zu verstecken.

Einfach diese XML Datei herunterladen und via die Importfunktion zu Zabbix hinzufügen, danach direkt den Host oder das Standardtemplate damit verlinken.

Weitere Vorschläge für zu überwachende Dateien sind sehr willkommen!

GPL Treiber für XEN virtual machines

Windows Treiber für Systeme die auf XEN laufen, kann man auf http://www.meadowcourt.org/downloads/ herunter laden. Die Treiber sind unter der GPL veröffentlicht und recht aktuell.

Ich konnte trotz einem amd64 Kernel nur die x86 Version installieren, danach sind aber alle Geräte im Gerätemanager erkannt worden und es läuft gefühlt etwas schneller.

© 2017 netmess

Theme by Anders NorenUp ↑