Wie konfiguriere ich eine neue Ubuntu-Installation, um ssh-Verbindungen zu akzeptieren?

226

Ich habe gerade Ubuntu installiert. Wie richte ich es ein, um es mir zu ermöglichen, darin zu sshen?

Im Moment bekomme ich "ssh: connect to host xxxx port 22: Operation time out".

Daryl Spitzer
quelle

Antworten:

297
sudo apt update
sudo apt install ssh
sudo ufw allow 22      # if you have ufw running, but it doesn't hurt to run.

Das ist das Minimum. Es erlaubt unbegrenzte Versuche fehlgeschlagener Passwörter an einem bekannten Port. Direkte Root-Anmeldung ist deaktiviert (Sie können immer noch suund sudoeinmal angemeldet). Wenn Ihr Benutzername und Passwort zu erraten ist und das Internet kann den Server sehen, jemand wird schließlich in brechen.

Ich kann das nicht genug betonen: Sie müssen das Standard-Setup härten. Sie tauschen im Wesentlichen Bequemlichkeit gegen die Wahrscheinlichkeit, gehackt zu werden, aus, aber ich habe in meinem Blog mehrere Vorschläge durchgearbeitet . Zumindest würde ich vorschlagen:

  • Schlüsselbasierte Anmeldungen. Deaktivieren Sie Kennwortanmeldungen.
  • Verschieben Sie es von Anschluss 22. Verwenden Sie etwas Verrücktes im Bereich 20000-60000.
  • Verwenden Sie fail2bandiese Option, um Personen, die es finden, zu verbieten und es zu brutalisieren.

Es dauert weniger als 10 Minuten und es besteht eine Wahrscheinlichkeit von 1/10000, dass sie eingedrungen sind. Die Wahrscheinlichkeit ist so gering, dass es nicht genug Papier auf der Welt gibt, um den Bruchteil zu schreiben. Wenn Sie mit Ihrem Schlüssel vorsichtig sind, verfügt er über eine eigene Passphrase, und Sie geben Ihre Anmeldeinformationen nicht im gesamten Netz weiter.

Wenn Sie über das Internet auf diesen SSH-Server zugreifen, stoßen Sie möglicherweise auf lokale Netzwerkhindernisse. Befindet sich der Computer hinter einem NAT-Router (z. B. den meisten Heimnetzwerken) ohne direkten Zugriff aus dem Internet, müssen Sie möglicherweise die Portweiterleitung überprüfen . Wenn Sie keinen Zugriff außerhalb des Netzwerks benötigen, können Sie die Netzwerksicherheit verbessern, indem Sie diesen Schritt überspringen.

Oli
quelle
9
Abhängig von Ihrer Instanz ist sudo ufw allow 22 möglicherweise nicht erforderlich. Zum Beispiel habe ich eine einfache VirtualBox Ubuntu-Server-Instanz mit Bridged Networking auf einem Windows-Host (für einfache Entwickleranforderungen) eingerichtet - Port 22 muss nicht geöffnet werden (bereits geöffnet), keine Notwendigkeit zum Härten, die möglicherweise 22 schließen würde, keine Notwendigkeit, einen anderen Port zu verwenden.
Chris Moschini
@Oli - Kannst du ein bisschen erweitern, wie fail2ban funktioniert? Installieren Sie es einfach und es startet automatisch einen Daemon für Sie oder muss er konfiguriert werden?
Matteo
2
@ Matteo Es wird mit einigen Standardeinstellungen für allgemeine Dienste (wie SSH) ausgeliefert. In diesem Fall sollte es ausreichen, nur die Protokolle zu installieren, es sei denn, Sie haben ernsthafte Änderungen am Speicherort Ihrer Protokolle vorgenommen.
Oli
Nur sudo apt-get install sshzu openssh-server
Ihrer Information
1
@ Sridhar-Sarnobat, Das sshPaket wird als Metapaket für den Secure Shell-Client und den Secure Shell-Server beschrieben. Wenn Sie es installieren, werden beide Abhängigkeiten installiert. Der Client ist jedoch standardmäßig bereits in Ubuntu installiert, sodass Sie wahrscheinlich nur den Server installieren müssen.
H2ONaCl
23

Durch die Installation des im Software Center verfügbaren Pakets openssh-server wird das Serverelement bereitgestellt, mit dem ein Client wie ein anderer Ubuntu-Desktop eine sichere Verbindung zu einem "Server" wie Ihrer VM herstellen kann.

Die Ubuntu-Community verfügt über eine hervorragende Anleitung zu SSH , OpenSSH-Server und dessen sicherer Konfiguration .

fossfreedom
quelle
3

Ich wollte nur hinzufügen, dass Sie sicherstellen müssen, dass Sie die richtige WAN-Schnittstelle ausgewählt haben, wenn Ihr Modem / Router mehrere WAN-Schnittstellen unterstützt.

Ich habe einen Billion BiPAC 7800NXL mit 3 möglichen WAN-Ports (DSL, ETH und 3G). Wenn Sie eine neue Weiterleitung erstellen (in diesem Router als "virtueller Server" bezeichnet), verwendet der 7800NXL standardmäßig immer die DSL-WAN-Schnittstelle, obwohl ich nur die Ethernet-WAN-Schnittstelle verwende.

Ich hatte alle Ports korrekt eingerichtet, aber meine Weiterleitung war für die Verwendung von DSL konfiguriert, sodass es nicht funktionierte. Sobald ich ein neues Forward für die ETH WAN-Schnittstelle erstellt habe, hat es funktioniert.

Greg
quelle
3

Konfigurieren Sie die SSH-Dienste oder aktivieren Sie die SSH-Serverdienste auf dem Ubuntu-Server:

Um SSH unter Ubuntu zu installieren oder zu konfigurieren, müssen Sie zuerst SSH-Pakete auf dem Ubuntu-Server installieren, damit Sie Ihre virtuelle Maschine als nächstes über Putty oder einen anderen SSH-Anmelde-Patch auf Ihr Host-System übertragen können ...

Zuerst müssen Sie das SSH-Paket auf Ubuntu installieren, also führen Sie diesen Befehl aus

#sudo apt-get install openssh-server

Irgendwann haben Sie Guyzz einige Fehler während der Installation oder fügen Sie dieses Paket auf Ihrem Server wie ..

CD - ROM - Fehler beim Paket SSH installieren so für beheben Sie dieses Problem Sie können Sie meine eine andere Verknüpfung auf der CD - ROM - Montage Schließlich , nachdem Sie diese CD - ROM auf Ubuntu Server Montage jetzt Sie easly SSH - Dienst von unten Befehl installieren

#sudo apt-get install openssh-server

Dieses Paket jetzt installieren und während der Installation nach Ja / Nein fragen und dann JA drücken ...

Schließlich wird das SSH-Paket auf dem Ubuntu-Server installiert und die SSH-Dienste mit folgendem Befehl neu gestartet.

#sudo service ssh restart
---OR type---
#sudo service ssh start

Dann BOOM Ihre SSH haben installieren und erfolgreich starten ... jetzt öffnen Putty aus dem lokalen Host - Computer und geben Sie Ihre VM - IP dort Putty Anmeldung Und BOOM Sie können Ihre VM Server Trog Host - Maschine Putty SSH anmelden ...

Brijesh Sondarva
quelle