Set system time via ntpdate // get rid of daemons!

I don’t like to have daemons listening on the systems I am responsible for. This is the reason why I check periodically all systems with netstat -tulpen to see what processes are actually listening, look if they are needed and may be bound to localhost only.

I used to set the system time via ntpd, but many years ago I switched to a simple cron job that runs ntpdate. This is good enough for all systems that don’t depend on milliseconds and smooth time shift etc. I was able to remove ntpd from almost all servers. My cron job looks like this:

## ntpdate Cron Job
 
# Environment Settings
MAILTO=root
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
 
# Job Definition
*/30 * * * *  root  /usr/sbin/ntpdate 0.pool.ntp.org > /tmp/ntpdate.prt 2>&1

#sysadmin Teil 1: Wie man sich auf Linux Systemen verstecken kann

Hier mal ein paar kleine Dinge zusammengeschrieben wie man sich auf Linux Systemen verstecken kann. Was man als Sysadmin dagegen tun kann gibt es dann in dem nächsten Blogpost

  • Wenn man den Output von den Kommandos lastlog, last oder lastb leeren möchte hilft folgendes:
    user@host ~ $ >/var/log/lastlog
    user@host ~ $ >/var/log/wtmp
    user@host ~ $ >/var/log/btmp
  • Befehle die mit vorangestellten zwei Leerzeichen ausgeführt werden sind normalerweise nicht der History sichtbar
    user@host ~ $   cat /var/www/foo/mysql.inc.php
  • Kommandos nicht in die History schreiben:
    user@host ~ $ export HISTSIZE=0
  • PROMPT_COMMAND resetten:
    user@host ~ $ export PROMPT_COMMAND=""
  • History löschen und Shell beenden:
    user@host ~ $ unset HISTFILE && exit
  • Prozesse verstecken kann man, indem man ein leeres Verzeichnis über ein /proc/PID Verzeichnis mountet. Den Mount wiederum kann man auch verstecken:
    user@host ~ $ mkdir /tmp/foo
    user@host ~ $ cp /etc/mtab /tmp/t
    user@host ~ $ mount --bind /tmp/foo /proc/PID
    user@host ~ $ mv /tmp/t /etc/mtab

Weiteres gerne in die Kommentare.

Update 1, 25.07.2015:

https://twitter.com/lordcoke/status/623942954135257088

Mehr Sicherheit fuer die eigenen Daten – Einleitung und Aufraeumen

Im Kontext der NSA Affaere ist viel ueber Sicherheit und Verschluesselung geschrieben worden. Etwas zu aendern ist schwer, denn es koennen sich nur die Menschen aendern, die Dienste werden es nicht tun. Die Nutzer muessen das Thema Verschluesselung selbst in die Hand nehmen. Fuer viele ist das eigentlich unmoeglich, weil sie schlichtweg keine Ahnung haben. Fuer Menschen wie Dich und mich, die eigene Server betreiben, ist es jedoch machbar. Ich werde in der kommenden Zeit und in unregelmaessigen Abstaenden hier auf meinem Blog verschiedene Dinge vorstellen, die als direkte Reaktion aus diesen Ueberlegungen hervorgegangen sind.

Eine 100%tige Unabhaengigkeit ist nicht zu erreichen. Aber jeder kleine Schritt dahin ist richtig. Wir wollen alle kommunizieren ueber die Netze, und in der Regel bezahlen wir mit unseren Daten fuer die Services die wir nutzen. Das bedeutet im Umkehrschluss, dass wenn wir nicht mit unseren Daten bezahlen, wir auch keine Premiumdienste erwarten koennen die super einfach von der Hand gehen.

Der erste Schritt war fuer mich das Aufraeumen. Ich bin meine Rootserver durchgegangen und habe folgendes gemacht:

  1. Alle Zugaenge von mir und fuer Freunde ueberprueft die existierten und gegebenfalls gesperrt.
  2. Ich bin die Prozesstabelle durchgegangen und habe sichergestellt, dass ich keine Dienste laufen habe, die ich nicht laufen haben moechte. Gegebenenfalls habe ich diese deinstalliert.
  3. Ich bin im Apache alle vHosts durchgegangen und habe dort aufgeraeumt. Nicht mehr benoetigte deaktiviert und Konfigurationen angeglichen
  4. Ich habe meine DNS Konfigurationen durchgeschaut und sichergestellt, dass keine verwaisten Subdomains existieren etc.
  5. Ich bin das Dateisystem durchgegangen, habe mein Homeverzeichnis aufgeraeumt, die DocumentRoots der vHosts usw.

Kurz: Aufraeumen um eine gute Grundlage, einen Ueberblick, eine gute Struktur zu schaffen fuer die naechsten Arbeiten im Kontext Verschluesselung, die ich machen wollte. Stay tuned….