httpd und ssh immer uptodate

Dieses Thema im Forum "Security Talk" wurde erstellt von tzzaetaynzz, 29.08.2006.

  1. #1 tzzaetaynzz, 29.08.2006
    tzzaetaynzz

    tzzaetaynzz Tripel-As

    Dabei seit:
    31.01.2004
    Beiträge:
    153
    Zustimmungen:
    0
    hallo an alle,

    ich habe nun httpd und ssh immer am netz, welteit offen.

    will ich das risko gehackt zu werden minimieren. logisch.
    dazu gehört wohl auch, dass immer das aktuelle, gepatchte rpm fuer httpd und sshd installiert ist.

    wie kann ich immer uptodate sein, bei genau diesen beiden rpms?
    gibt es mailing listen die ich lesen muß, oder kann ich bei neuen, gepatchten rpms
    automatisiert eine installation einleiten?

    ps: ich nutze fedora core 5.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. dmaphy

    dmaphy Routinier

    Dabei seit:
    16.04.2004
    Beiträge:
    482
    Zustimmungen:
    0
    Ort:
    Hamburg
    yum check-update sollte da eigentlich reichen. bei sowas gibt es bei fedora relativ flott updates. du kannst dann ja auch dienste mit yum konfigurieren die automatisch laufen etc...
     
  4. #3 Wolfgang, 29.08.2006
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Nur mal so angemerkt:
    Debian (und viele andere Distributioenen) kennen kein yum.
    Dafür gibt es aber der Dist. entsprechende andere Paketmanger.

    Gruß Wolfgang
     
  5. RodNoc

    RodNoc Mitglied

    Dabei seit:
    27.08.2006
    Beiträge:
    26
    Zustimmungen:
    0
    Ort:
    Bochum
    fedora wüsste ich nicht, aber so habe ich das mal unter debian gelöst:

    jede nacht um 0:00 geht ein CronJob durch, der
    apt-get update && apt-get dist-upgrade
    ausführt. damit wird jede nacht alles aktualisiert, was es zu aktualisieren gibt.

    ich denke unter fedora wird es das auch geben. das stichwort yum habe ich schon gelesen oben ;) gugg dir einfach mal die man-pages an ;)

    Gruß
    Dom
     
  6. dmaphy

    dmaphy Routinier

    Dabei seit:
    16.04.2004
    Beiträge:
    482
    Zustimmungen:
    0
    Ort:
    Hamburg
    grade weil er geschrieben hat, er verwendet fedora, hab ich ja auch yum erwähnt^^ ;)
     
  7. RodNoc

    RodNoc Mitglied

    Dabei seit:
    27.08.2006
    Beiträge:
    26
    Zustimmungen:
    0
    Ort:
    Bochum
    das war mir klar ;)

    Aber es gibt auch debian-user die vll das gleiche problem haben und wenn die dann googln landen die hier ;) Kann doch net schlecht sein, wenn eine lösung für ein anderes linux hier steht ;) und das schema ist das gleiche, nur der befehl muss angepasst werden ;)
     
  8. #7 theton, 30.08.2006
    Zuletzt bearbeitet: 30.08.2006
    theton

    theton Bitmuncher

    Dabei seit:
    27.05.2004
    Beiträge:
    4.820
    Zustimmungen:
    0
    Ort:
    Berlin, Germany
    Und wer bestaetigt, ob die Updates wirklich installiert werden sollen? Das tut der Cron nicht automatisch. Ich denke, dass daher dein System alles andere als up-to-date sein duerfte. *anmerk*
    Ausserdem halte ich es auf produktiven Servern nicht fuer sinnvoll dist-upgrade zu automatisieren. Wenn da mal was schief geht, ist naemlich kein Admin da, der sich sofort darum kuemmern kann. Es gibt nunmal oft genug kleinere Schwierigkeiten, gerade beim dist-upgrade. Was bringt es z.B. einen neuen Kernel zu installieren, wenn niemand den Rechner rebootet. Auch laeuft man Gefahr, dass nach einem Update der glibc das System irgendwann komplett crasht, da ja von den Programmen noch die im RAM vorhandenen Reste der aelteren Version genutzt werden.
    Deswegen wird wohl jeder verantwortungsvolle Admin keine dist-upgrade per Cron laufen lassen. Aber wie gesagt, deine funktionieren mit ziemlicher Sicherheit nicht.

    Unter yum tut es uebrigens ein
    Code:
    yum update && yum upgrade
    Da kommt nach dem Download aber auch nochmal eine Abfrage, die man mit '-y' automatisieren koennte. Also:
    Code:
    yum update && yum -y upgrade
    Die Option funktioniert uebrigens auch bei apt-get.
    Code:
    apt-get update && apt-get -y dist-upgrade
     
  9. #8 tzzaetaynzz, 30.08.2006
    tzzaetaynzz

    tzzaetaynzz Tripel-As

    Dabei seit:
    31.01.2004
    Beiträge:
    153
    Zustimmungen:
    0
    guten morgen.
    vielen danke an jeden von euch für die vielen anregungen.
    ich werde mal schauen was für mich passt
    und berichtet dann, was ich gemacht habe.
     
  10. RodNoc

    RodNoc Mitglied

    Dabei seit:
    27.08.2006
    Beiträge:
    26
    Zustimmungen:
    0
    Ort:
    Bochum
    Das war nicht meine komplette Lösung ;)

    Ich habe das alles in eine Log umgeleitet und die mir dann selber per Mail zugeschickt... und mit dem -y habe ich es auch gemacht, das ist klar... hatte es nur vergessen anzugeben.... Es war eigentich alles in Ordnung, denke ich ;)

    Achja: Den Server gibt es nciht mehr ;) Und weil ich generell keine automatischen updates mehr mache hatte ich das ganze nicht mehr im Kopf. Ich hab gerne die volle Kontrolle über das ganze system und daher starte ich lieber selber die Updates ;)

    Gruß
    Dom
     
  11. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  12. #10 tzzaetaynzz, 31.08.2006
    tzzaetaynzz

    tzzaetaynzz Tripel-As

    Dabei seit:
    31.01.2004
    Beiträge:
    153
    Zustimmungen:
    0
    hallo an alle,

    habe eure tips in einem skript verarbeitet,
    dass ich nach /etc/cron.hourly kopiert habe
    (in der hoffnung, dass es nun stuendlich gestartet wird.)

    vielleicht habt ihr noch ein paar anmerkungen?

    PHP:
    #!/bin/bash

    # Emailadressen
    EMAIL_ADRESSEN="admin"

    # Welche RPM Versionen sind installiert?
    HTTPD_INSTALLED=`rpm -qa httpd`
    OPENSSHD_INSTALLED=`rpm -qa openssh`

    # Sind Updates für openssh und httpd vorhanden?
    yum update openssh httpd 2&>> /dev/null
    yum 
    -y upgrade openssh httpd 2&>> /dev/null

    # Sind neue RPMs aktualisiert?
    HTTPD_UPDATED=`rpm -qa httpd`
    OPENSSHD_UPDATED=`rpm -qa openssh`

    # Wenn mindestens ein RPM aktualisiert wurde: Mailtext generieren
    if [ $HTTPD_INSTALLED != $HTTPD_UPDATED ] || \
            [ 
    $OPENSSHD_INSTALLED != $OPENSSHD_UPDATED ]; then
                    AKTUALISIERT
    ="Mindestens ein RPM wurde aktualisiert: $HTTPD_UPDATED oder $OPENSSHD_UPDATED.\n\nDie vorherigen Versionen waren: $HTTPD_INSTALLED und $OPENSSHD_INSTALLED."
    fi

    # Wenn httpd aktualisiert wurde: Dienst neustarten.
    if [ $HTTPD_INSTALLED != $HTTPD_UPDATED ]; then
            service httpd restart 2
    &>/dev/null
                    
    # Wenn der HTTPD nicht gestartet werden konnte: Mailtext generieren.
                    
    if [ $? -gt 0 ]; then
                    FEHLSTART_HTTPD
    ="Jedoch konnte der neue HTTPD nicht gestartet werden!"
                    
    fi
    fi

    # Wenn openssh aktualisiert wurde: Dienst neustarten.
    if [ $OPENSSHD_INSTALLED != $OPENSSHD_UPDATED ]; then
            service sshd restart 2
    &>/dev/null
                    
    # Wenn der SSHD nicht gestartet werden konnte: Mailtext generieren.
                    
    if [ $? -gt 0 ]; then
                            FEHLSTART_OPENSSHD
    ="Jedoch konnte der neue SSHD nicht gestartet werden!"
                    
    fi
    fi

    # Generierten Mailtext senden.
    if [ -"$AKTUALISIERT]; then
            
    # Ergebnisse vie Mail versenden.
            
    echo -"$AKTUALISIERT\n\n$FEHLSTART_HTTPD\n$FEHLSTART_OPENSSHD| \
                    
    mail -s AKTUALISIERT\! $EMAIL_ADRESSEN
    fi


     
  13. #11 phrenicus, 31.08.2006
    phrenicus

    phrenicus Routinier

    Dabei seit:
    24.05.2006
    Beiträge:
    253
    Zustimmungen:
    0
    Ort:
    Tübingen, Germany
    Hallo,

    insgesamt ein schönes Skript. Ein paar Anmerkungen fielen mir dazu ein:

    1. Ist das Skript ausführbar?
    2. Es ist ein Shell-Skript, kein PHP-Code (*klugscheiss*)
    3. Man sollte immer eine PATH-Variable setzen, aus Eindeutigkeits- und Sicherheitsgründen.

    4.
    Code:
    HTTPD_INSTALLED=`rpm -qa httpd`
    OPENSSHD_INSTALLED=`rpm -qa openssh`
    
    Hier ist `rpm -q httpd` völlig ausreichend, wenn man den Namen des Packets kennt.

    5. Du fragst doppelt ab, ob die Versionen INSTALLED und UPDATED sich unterscheiden, das reicht eigentlich einmal.

    Code:
    if [ $HTTPD_INSTALLED != $HTTPD_UPDATED ] ; then
        HTTPD_AKTUALISIERT="Der Webserver wurde aktualisiert von Version $HTTPD_INSTALLED auf Version $HTTPD_UPDATED.";
        service httpd restart 2&>1 >/dev/null || FEHLSTART_HTTPD="Jedoch konnte der neue HTTPD nicht gestartet werden";
    fi
    
    Bei OPENSSH genauso und dann musst Du halt den Mailtext zum Schluss umbauen.

    6. Die Umlenkung in Deinem CODE ist IMHO inkorrekt.

    Code:
    service httpd restart 2&>1 >/dev/null 
    
    legt den Fehlerkanal mit dem Ausgabekanal zusammen und schickt den Ausgabekanal nach /dev/null. Ich nehme an, das wolltest Du.

    7. Als Tipp, man kann sowas auch in eines der Logfiles eintragen. Dafür gibt es das Kommano "logger". man logger. Wenn ich als root Updates ausführe, habe ich die auch gerne in den Logs. Beispiel: Am Ende des Skripts:

    Code:
    PRI="daemon.info"
    test "$FEHLSTART_HTTPD" != "" && PRI="daemon.warn"
    logger -p $PRI -t AUTO-UPDATE "Das nächtliche Update wurde durchgeführt. $HTTPD_AKTUALISIERT --- $$FEHLSTART_HTTPD"
    
    8. Ein hübscheres Ende ;)
    Code:
    logger -t AUTO-UPDATE "Das Update wurde beendet";
    
    exit
    # end of script
    
    So hast Du im Log zum Ende des Skripts einen sauberen Zeitstempel. Wenn Du das am Anfang auch machst, kannst Du nach Auswertung der Logs sogar sagen, wie lange es gedauert hat.

    Gruß
     
Thema:

httpd und ssh immer uptodate

Die Seite wird geladen...

httpd und ssh immer uptodate - Ähnliche Themen

  1. Named Pipe und Lighttpd

    Named Pipe und Lighttpd: Hey, ich habe ein kleines Problem, bei dem ich nicht weiß, wie ich vorgehen soll. Im Prinzip ist mein Anliegen nicht schwer (denke ich mal). Auf...
  2. httpd.conf ändern Centos 5

    httpd.conf ändern Centos 5: Hallo, und zwar war ich lange auf der suche nach einem Auto DJ Webinterface, jetzt habe ich eines gefunden aber der letzte schritt ist solch...
  3. Cluster Probleme (DRBD Heartbeat Apache/httpd)

    Cluster Probleme (DRBD Heartbeat Apache/httpd): Hallo Zusammen, ich habe folgendes Problem, sodass ich den Apache nicht in meinem Cluster starten kann. nodeAlpha eth0: 10.x.x.201 eth1:...
  4. lighttpd - seltsame Einträge in der access.log (vulnerability scanner, etc.)

    lighttpd - seltsame Einträge in der access.log (vulnerability scanner, etc.): Hallo, ich besitze seit geraumer Zeit einen kleinen vServer bei dem Anbieter www.proplay.de (die Server stehen bei Hetzner) und wundere mich nun...
  5. Sicherheitsfrage vsftpd und lighttpd

    Sicherheitsfrage vsftpd und lighttpd: Hallo, ich habe auf meinem vServer bei proplay.de Ubuntu Linux 9.10 (Kernel: 2.6.18) installiert. Nun habe ich einen FTP-Server (vsftpd) und...