Ich versuche, meinen neuen Laptop mit 11.10 über meinen Router per SSH mit meinem alten Laptop mit 8.04 zu verbinden.
Diese Frage wird hier in den Ubuntu-Foren gestellt und beantwortet:
http://ubuntuforums.org/showthread.php?t=1648965
Ich dachte, es wäre hilfreich, hier eine definitivere Antwort zu haben.
Hinweis: Ich musste zuerst den OpenSSH-Server auf dem Laptop installieren, mit dem ich eine Verbindung herstellen wollte, und den SSH-Port in meiner Firewall mit Firestarter öffnen.
Antwort1
Sie können den Zugriff auf Ihren SSH-Server auf viele Arten einschränken.
Meiner Meinung nach ist es am wichtigsten, SSH-Schlüssel zu verwenden und die Kennwortauthentifizierung zu deaktivieren.
Weitere Einzelheiten finden Sie auf den folgenden Wiki-Seiten
- https://help.ubuntu.com/community/SSH/OpenSSH/Keys
- https://help.ubuntu.com/community/SSH/OpenSSH/Configuring#Disable_Password_Authentication
Sie können den Zugriff auf ein bestimmtes Subnetz auf verschiedene Weise beschränken. Ich gehe davon aus, dass sich Ihr SSH-Server im Subnetz 192.168.0.0/16 mit der IP-Adresse 192.168.0.10 befindet. Passen Sie die Einstellungen entsprechend an ;)
Router
Eine Verteidigungslinie ist die Verwendung eines Routers. Deaktivieren Sie unbedingt UPnP und lassen Sie keine Portweiterleitung zu.
SSH-Konfiguration
Sie können mehrere Optionen in festlegen /etc/ssh/sshd_config
. Eine davon ist die Abhöradresse. Wenn Sie eine Abhöradresse für Ihr Subnetz festlegen. Eine privateIP Adresseist nicht über das Internet routbar.
ListenAddress 192.168.0.10
Sie können auch die AllowUsers
AllowUsers [email protected]/16
Etwas damit verbunden ist auch die Möglichkeit, den Port zu ändern
Port 1234
Sehen:http://manpages.ubuntu.com/manpages/precise/man5/sshd_config.5.html
TCP-Wrapper
Wie im Forumsbeitrag beschrieben, können Sie TCP Wrapper verwenden. TCP Wrapper verwendet 2 Dateien /etc/hosts.allow
und/etc/hosts.deny
Bearbeiten /etc/hosts.allow
und Hinzufügen Ihres Subnetzes
sshd : 192.168.0.
Bearbeiten /etc/hosts.deny
und alle ablehnen
ALL : ALL
Siehe auch:http://ubuntu-tutorials.com/2007/09/02/network-security-with-tcpwrappers-hostsallow-and-hostsdeny/
Firewall
Zuletzt können Sie Ihren Server mit einer Firewall schützen. Sie können iptables, ufw oder gufw verwenden.
iptables
sudo iptables -I INPUT -p tcp --dport 22 -s 192.168.0.0/16 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j REJECT
Bitte nicht verwenden DROP
iniptables
.
ufw
sudo ufw allow from 192.168.0.0/16 to any port 22
ufw
hat eine grafische Oberfläche: gufw
Antwort2
UPDATE 2020
Da diese Frage nun weniger komplex ist, kann sie mit dem Match
Schlüsselwort ausOpenSSH 6.5/6.5p1 (2014):
ImsshdKonfigurationsdatei ( /etc/ssh/sshd_config
inDebianund abgeleitete Betriebssysteme wieUbuntu)
# Disable all auth by default
PasswordAuthentication no
PubkeyAuthentication no
[.. then, at the end of the file ..]
# Allow auth from local network
Match Address 192.168.1.*
PubkeyAuthentication yes
# if you want, you can even restrict to a specified user
AllowUsers stephan
Tipp: Es ist besser, Ihre benutzerdefinierten Regeln in einer Datei in einem Ordner abzulegen /etc/ssh/sshd_config.d
. Normalerweise /etc/ssh/sshd_config.d/local_network_only.conf
. Dadurch werden Konflikte vermieden, wenn beim Upgrade auf eine neue Version des SSH-Server-Pakets die SSHD-Konfigurationsdatei geändert wird.
man sshd_config
für mehr Details
Antwort3
ssh (Secure Shell) wird verwendet, um sicher auf Daten zuzugreifen und sie zu übertragen (verwendetes RSA_KEYS-Paar). Sie können mit ssh auf zwei Arten auf Daten zugreifen: 1. Befehlszeile 2. über den Dateibrowser
Befehlszeile: Hierfür müssen Sie nichts installieren. Die erste Aufgabe besteht darin, sich bei einem anderen Computer anzumelden.
ssh other_computer_username@other_computer_ip
Dieser Befehl fragt nach einem Passwort, das das Passwort des anderen Computers ist (für einen bestimmten Benutzernamen). Sie haben sich gerade bei der Shell des anderen Computers angemeldet. Stellen Sie sich vor, dieses Terminal ist wie das Shell-Terminal Ihres Computers. Sie können mit der Shell auf anderen Computern alles tun, was Sie auf Ihrem Computer tun können.
Dateibrowser: Sie müssen openssh-server installieren
sudo apt-get install openssh-server
Um sich anzumelden, gehen Sie zu Datei->ConnectToServer