GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Automatisches Sicherheitsupdate (unbeaufsichtigte Upgrades) auf Ubuntu einrichten

Dieses Tutorial zeigt Ihnen, wie Sie unter Ubuntu automatische Sicherheitsupdates, auch unbeaufsichtigte Upgrades genannt, einrichten. Wenn Sie nicht unter einer Höhle leben, dann kennen Sie wahrscheinlich die massive Equifax-Datenpanne. Zwischen Mai und Juli 2017 wurden 143 Millionen Equifax-Kundendaten gestohlen, darunter Name, Sozialversicherungsnummer, Geburtsdatum, Führerschein und 200.000 Kreditkartennummern.

Im März 2017 wurde eine kritische Schwachstelle in Apache Structs gefunden und die Apache Foundation veröffentlichte einen Fix dafür, als sie die Existenz der Schwachstelle bekannt gab. Equifax hat die Schwachstelle jedoch zwei Monate lang nicht gepatcht, was zu einer massiven Datenschutzverletzung führte. Unternehmen, die komplexe Anwendungen ausführen, müssen vor der Installation von Updates möglicherweise umfangreiche Tests durchführen. Wenn Sie jedoch einen einfachen Linux-Server für den persönlichen Gebrauch haben, können Sie automatische Sicherheitsupdates aktivieren, um Schwachstellen so schnell wie möglich zu beheben.

Automatisches Sicherheitsupdate (unbeaufsichtigte Upgrades) auf Ubuntu Server konfigurieren

Installieren Sie zuerst die unattended-upgrades Paket.

sudo apt update

sudo apt install unattended-upgrades

Sie müssen den update-notifier-common installieren Paket, um den automatischen Neustart einzurichten.

sudo apt install update-notifier-common

Bearbeiten Sie dann die 50unattended-upgrades Datei.

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

In dieser Datei können Sie konfigurieren, welche Pakete automatisch aktualisiert werden sollen. Standardmäßig werden nur Sicherheitsupdates automatisch installiert, wie in den folgenden Zeilen angegeben. Es besteht also keine Notwendigkeit, diesen Abschnitt zu ändern.

Unattended-Upgrade::Allowed-Origins {
        "${distro_id}:${distro_codename}";
        "${distro_id}:${distro_codename}-security";
        // Extended Security Maintenance; doesn't necessarily exist for
        // every release and this system may not have it installed, but if
        // available, the policy for updates is such that unattended-upgrades
        // should also install from here by default.
        "${distro_id}ESMApps:${distro_codename}-apps-security";
        "${distro_id}ESM:${distro_codename}-infra-security";
//      "${distro_id}:${distro_codename}-updates";
//      "${distro_id}:${distro_codename}-proposed";
//      "${distro_id}:${distro_codename}-backports";
};

  • Der erste Ursprung "${distro_id}:${distro_codename}" ist erforderlich, da Sicherheitsupdates neue Abhängigkeiten aus nicht sicherheitsrelevanten Quellen einbeziehen können. Dieser Ursprung bietet keine Software-Updates.
  • Der zweite Ursprung ist für regelmäßige Sicherheitsupdates.
  • Der dritte und vierte Ursprung (ESMApps und ESM) sind für die erweiterte Sicherheitswartung, d. h. für diejenigen, die eine Ubuntu-Version ausführen, die das Ende ihrer Lebensdauer erreicht hat. Sie können es so lassen, wie es ist.

E-Mail-Benachrichtigung

Manchmal kann Ubuntu Sicherheitsupdates nicht installieren, sodass ein manuelles Update erforderlich ist. Wenn Sie nach jedem Sicherheitsupdate E-Mail-Benachrichtigungen erhalten möchten, suchen Sie die folgende Zeile und kommentieren Sie sie aus. (Entfernen Sie die doppelten Schrägstriche am Anfang.)

Ubuntu 18.04

//Unattended-Upgrade::Mail "root";

Ubuntu 20.04

//Unattended-Upgrade::Mail "";

Sie können eine E-Mail-Adresse angeben, um Benachrichtigungen wie unten zu erhalten.

Unattended-Upgrade::Mail "[email protected]";

Wenn Sie E-Mail-Benachrichtigungen nur dann erhalten möchten, wenn während des Sicherheitsupdates ein Fehler auftritt, kommentieren Sie die folgende Zeile aus.

Ubuntu 18.04

//Unattended-Upgrade::MailOnlyOnError "true";

Unter Ubuntu 20.04 müssen Sie die folgende Zeile finden

//Unattended-Upgrade::MailReport "on-change";

Kommentieren Sie es aus und ändern Sie es bei Änderung in

Unattended-Upgrade::MailReport "only-on-error";

Nicht verwendete Abhängigkeiten automatisch entfernen

Sie müssen wahrscheinlich sudo apt autoremove ausführen nach jedem Update finden Sie also die folgende Zeile:

//Unattended-Upgrade::Remove-Unused-Dependencies "false";

Entkommentieren Sie diese Zeile und ändern Sie false auf true .

Unattended-Upgrade::Remove-Unused-Dependencies "true";

Automatischer Neustart

Wenn ein Sicherheitsupdate für den Linux-Kernel installiert ist, müssen Sie den Ubuntu-Server neu starten, um das Kernel-Update anzuwenden. Wenn der Server nur von Ihnen oder wenigen Personen verwendet wird, kann es praktisch sein, den automatischen Neustart zu aktivieren. Suchen Sie die folgende Zeile.

//Unattended-Upgrade::Automatic-Reboot "false";

Kommentieren Sie es aus und ändern Sie false auf true um den automatischen Neustart zu aktivieren

Unattended-Upgrade::Automatic-Reboot "true";

Sie können auch angeben, wann der Neustart durchgeführt wird. Standardmäßig wird der Neustart sofort nach der Installation des Kernel-Updates durchgeführt. Ich habe es so eingestellt, dass es um 4 Uhr morgens neu startet. Stellen Sie sicher, dass Sie eine korrekte Zeitzone für Ihren Server eingestellt haben.

Unattended-Upgrade::Automatic-Reboot-Time "04:00";

Speichern und schließen Sie die Datei.

Wenn der Server von vielen Benutzern verwendet wird oder eine hohe Betriebszeit erfordert (wie in diesem Blog), sollten Sie den automatischen Neustart nicht aktivieren. Stattdessen können Sie Canonical Livepatch verwenden, um den Linux-Kernel ohne Neustart zu patchen.

  • Canonical LivePatch Service:Linux-Kernel auf Ubuntu ohne Neustart patchen

Automatisches Sicherheitsupdate aktivieren

Nachdem das automatische Sicherheitsupdate konfiguriert ist, müssen wir es aktivieren, indem wir die 20auto-upgrades erstellen Datei.

sudo nano /etc/apt/apt.conf.d/20auto-upgrades

Kopieren Sie die folgenden zwei Zeilen und fügen Sie sie in die Datei ein.

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

  • Die erste Zeile macht apt Führen Sie „apt-get update“ aus “ jeden Tag automatisch. Wenn es auf 2 eingestellt ist, dann jeden zweiten Tag. (0=deaktiviert)
  • Die zweite Zeile macht apt um Sicherheitsupdates automatisch zu installieren. (1=aktiviert, 0=deaktiviert)

Speichern und schließen Sie die Datei.

Unbeaufsichtigtes Upgrade zu einem bestimmten Zeitpunkt ausführen

Das unbeaufsichtigte Upgrade wird nach dem Zufallsprinzip zwischen 00:00 und 07:00 Uhr ausgeführt, um eine Lastspitze auf den Spiegelservern zu verhindern, da alle gleichzeitig Updates ausführen. Sie können ein unbeaufsichtigtes Upgrade manuell ausführen mit:

sudo unattended-upgrade -v

Sie können diesen Befehl auch zu Ihrem Cron-Job hinzufügen.

sudo crontab -e

Fügen Sie die folgende Zeile am Ende Ihrer Crontab-Datei hinzu, damit das unbeaufsichtigte Upgrade jeden Tag um 2 Uhr morgens ausgeführt wird.

0 2 * * * sudo /usr/bin/unattended-upgrade -v

SMTP-Relay einrichten

Um E-Mail-Benachrichtigungen nach jedem Sicherheitsupdate zu erhalten, muss Ihr Server E-Mails senden können. Wenn dies Ihr E-Mail-Server ist, müssen Sie nur noch bsd-mailx installieren Paket.

sudo apt install bsd-mailx

Wenn dies kein E-Mail-Server ist, müssen Sie SMTP-Relay einrichten. Wir können den Postfix-SMTP-Server installieren und dann E-Mails über E-Mail-Dienstanbieter weiterleiten.

Es gibt mehrere E-Mail-Dienstanbieter (ESP), der als Relay-Host fungieren kann. Einige erheben eine kleine Gebühr, andere bieten jeden Monat kostenlose Kontingente an. In diesem Artikel möchte ich Ihnen zeigen, wie Sie Sendinblue verwenden, einen E-Mail-Dienstanbieter, mit dem Sie 300 E-Mails pro Tag kostenlos versenden können.

Erstellen Sie ein kostenloses Konto auf sendinblue.com. Sobald Sie Ihr Benutzerprofil vervollständigt haben, klicken Sie auf Transactional Registerkarte erhalten Sie Ihre SMTP-Einstellungen. Wenn es keine SMTP-Einstellungen gibt, müssen Sie sich an den Kundendienst von Sendinblue wenden, um den Transaktions-E-Mail-Dienst zu aktivieren.

Jetzt müssen Sie Ihren Postfix-SMTP-Server so konfigurieren, dass er die SMTP-Einstellungen von Sendinblue verwendet.

Lassen Sie uns den Postfix-SMTP-Server auf Ubuntu mit dem folgenden Befehl installieren.

sudo apt install postfix libsasl2-modules

Wenn die folgende Meldung angezeigt wird, drücken Sie die Tabulatortaste und die Eingabetaste.

Wählen Sie dann die zweite Option:Internet Site .

Legen Sie als Nächstes den System-E-Mail-Namen fest. Ich gebe beispielsweise meinen Domänennamen linuxbabe.com ein .

Öffnen Sie nach der Installation von Postfix die Hauptkonfigurationsdatei mit einem Befehlszeilen-Texteditor wie Nano.

sudo nano /etc/postfix/main.cf

Suchen Sie die folgende Zeile.

relayhost =

Standardmäßig ist sein Wert leer. Legen Sie den Wert von relayhost fest an [smtp-relay.sendinblue.com]:587 .

relayhost = [smtp-relay.sendinblue.com]:587

Fügen Sie dann die folgenden Zeilen am Ende dieser Datei hinzu.

# outbound relay configurations
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_tls_security_level = may
header_size_limit = 4096000

Speichern und schließen Sie die Datei. Erstellen Sie dann /etc/postfix/sasl_passwd Datei.

sudo nano /etc/postfix/sasl_passwd

Fügen Sie dieser Datei den SMTP-Relay-Host und die SMTP-Anmeldeinformationen wie unten beschrieben hinzu. Ersetzen Sie smtp_username und smtp_password mit Ihrem eigenen Benutzernamen und Passwort, die Sie von SendinBlue erhalten. Beachten Sie, dass zwischen dem Benutzernamen und dem Passwort ein Doppelpunkt steht.

[smtp-relay.sendinblue.com]:587      smtp_username:smtp_passowrd

Speichern und schließen Sie die Datei. Erstellen Sie dann die entsprechende Hash-DB-Datei mit postmap .

sudo postmap /etc/postfix/sasl_passwd

Jetzt sollten Sie eine Datei /etc/postfix/sasl_passwd.db haben . Starten Sie Postfix neu, damit die Änderungen wirksam werden.

sudo systemctl restart postfix

Standardmäßig sasl_passwd und sasl_passwd.db Datei kann von jedem Benutzer auf dem Server gelesen werden. Ändern Sie die Berechtigung auf 600, damit nur root diese beiden Dateien lesen und schreiben kann.

sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

Ab sofort versendet Postfix E-Mails über Sendinblue.

Absenderadressen hinzufügen

Klicken Sie auf das Dropdown-Menü in der oberen rechten Ecke Ihres Sendinblue-Konto-Dashboards und wählen Sie Absender &IPs aus Tab, um Ihre Domain und Absenderadresse hinzuzufügen.

Test-E-Mail senden

Jetzt können wir mit mailx eine Test-E-Mail versenden Befehl wie unten.

sudo apt install bsd-mailx

echo "this is a test email." | mailx -r from-address -s hello to-address

Wenn die SMTP-Konfigurationen korrekt sind, erhalten Sie eine E-Mail.

E-Mail wird nicht gesendet?

Sie können das E-Mail-Protokoll überprüfen (/var/log/mail.log ), um zu debuggen, warum E-Mails nicht gesendet werden.

Wenn Sie den Relay-Host mit Klammern in /etc/postfix/main.cf umschließen Datei.

relayhost = [smtp-relay.sendinblue.com]:587

Dann müssen Sie auch den Hostnamen in /etc/postfix/sasl_passwd einschließen Datei.

[smtp-relay.sendinblue.com]:587  [email protected]:YourGmailPassword

Denken Sie daran, die Hash-DB-Datei neu zu generieren.

sudo postmap /etc/postfix/sasl_passwd

Starten Sie Postfix neu, damit die Änderungen wirksam werden.

sudo systemctl restart postfix

Empfang von E-Mails deaktivieren

Standardmäßig ist Postfix so konfiguriert, dass eingehende E-Mails akzeptiert werden. Sie können Postfix so konfigurieren, dass es nur E-Mails sendet, aber keine eingehenden E-Mails akzeptiert. Suchen Sie die folgende Zeile in /etc/postfix/main.cf Datei.

inet_interfaces = all

Ändern Sie ihn in den folgenden Text, damit Postfix nur auf localhost lauscht.

inet_interfaces = loopback-only

E-Mail-Bericht

Es gibt 3 mögliche E-Mails, die durch ein unbeaufsichtigtes Upgrade gesendet werden:

  • Unbeaufsichtigtes Upgrade zurückgegeben:True. Das bedeutet, dass die Pakete erfolgreich installiert wurden.
  • Unbeaufsichtigtes Upgrade zurückgegeben:Falsch. Dies bedeutet, dass beim Installieren von Updates ein Fehler aufgetreten ist. Erfordert normalerweise menschliches Eingreifen. Wenn Sie diese E-Mail erhalten, müssen Sie sudo apt upgrade manuell ausführen .
  • Unbeaufsichtigtes Upgrade zurückgegeben:Keine. Es sind Updates verfügbar, aber das System hat sich geweigert, sie zu installieren.

Protokolle

Protokolle finden Sie unter /var/log/unattended-upgrades/ Verzeichnis.

Neustart prüfen

Der checkrestart Der Befehl kann Ihnen dabei helfen herauszufinden, welche Prozesse nach einem Upgrade neu gestartet werden müssen. Es ist unter debian-goodies verfügbar Paket.

sudo apt install debian-goodies

sudo checkrestart

Ubuntu
  1. Ubuntu – Wie stellt man eine statische IP in Ubuntu ein?

  2. Wie aktualisiere ich Ubuntu?

  3. Ubuntu 14.04 auf 15.04 aktualisieren?

  4. Automatisches Update?

  5. Aktualisieren Sie OpenSSL auf Ubuntu

So aktivieren Sie automatische unbeaufsichtigte Sicherheitsupdates auf Ubuntu

So deaktivieren Sie unbeaufsichtigte Upgrades auf Ubuntu

Richten Sie Postman unter Ubuntu 20.04 ein

Richten Sie automatische unbeaufsichtigte Updates für Ubuntu 20.04 ein

So aktualisieren Sie Ubuntu

Wie aktualisiere ich Filezilla auf Ubuntu?