Wie baue ich eine SSH Verbindung zwischen 2 Linux-PCs auf?

...komplette Frage anzeigen

8 Antworten

Melde Dich auf dem Rechner, mit dem Du Dich verbinden möchtest (also dem "Server") als lokaler Benutzer an und gib anschließend folgendes in die Kommandozeile ein.

ifconfig

Dann solltest Du eine Ausgabe bekommen, die in etwa wie folgt aussieht.

enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
inet 10.0.1.123 netmask 255.255.255.0 broadcast 10.0.1.255
inet6 fe80::xxxx:xxxx:xxxx:xxxx prefixlen 64 scopeid 0x20[link]
ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)
RX packets 7689 bytes 8641957 (8.2 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5281 bytes 575043 (561.5 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 20 memory 0xd2600000-d2620000

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10[host]
loop txqueuelen 1000 (Lokale Schleife)
RX packets 24 bytes 1864 (1.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 24 bytes 1864 (1.8 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlp3s0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Darin findest Du auch die (lokale) IPv4-Adresse des Systems. Ich habe sie in der obigen Ausgabe hervorgehoben.

Als Benutzer kannst Du jeden Nutzer auf dem System verwenden (außer ggf. "root", der manchmal für SSH gesperrt ist), auf dem Du Dich anmelden möchtest. Du arbeitest dann mit den Rechten und in der Umgebung des jeweiligen Nutzers.

Wenn Du also beispielsweiseeinen Nutzer namens "user" auf dem System hast und die IP-Adresse 10.0.1.123 lautet, kannst Du Dich vom anderen Rechner aus mit dem System wie folgt verbinden.

ssh user@10.0.1.123

Linuxhase 30.06.2017, 19:51

@NoHumanBeing

gib anschließend folgendes in die Kommandozeile ein.

Außer das man besser:

ip a

an Stelle von

ifconfig

verwenden sollte habe ich nichts anzumerken :-)

Linuxhase

1

Hallo

Wie baue ich eine SSH Verbindung zwischen 2 Linux-PCs auf?

  1. Auf dem entfernten Computer (z.B.: Server) muss  sshd (also der Daemon) installiert und gestartet sein!
  2. Auf dem Server muss der Daemon so konfiguriert sein das er einen Zugriff über Username & Passwort zulässt (bei der ersten Einrichtung ist das der Standard Zustand)
  3. Man kann natürlich nur mit einem Benutzer connecten den es auf dem Zielsystem auch gibt, im "schlimmsten" Fall ist es nur root der angelegt ist.

Wenn diese Voraussetzungen erfüllt sind kannst Du dich mit dieser Syntax auf das entfernte System "aufschalten":

ssh USER@HOST
  • USER = Benutzername der auf dem Server existiert.
  • HOST = Entweder der Domainname des Servers oder dessen IP Adresse.

Wenn es sich bei dem Host um einen Server handelt der vom Internet aus erreichbar ist, dann musst Du folgende wichtige Sachen erledigen:

  • a) Auf dem Rechner von dem aus der Zugriff erfolgen soll einen RSA oder DSA Schlüssel generieren und diesen im richtigen Verzeichnis auf dem Server ablegen.
  • b) Dann muss in der Konfiguration des ssh-Daemons der Login über Benutzername & Passwort abgestellt und nur noch Zugang über das PuplicKey Verfahren erlaubt werden.
  • c) In diesem Zuge auch sofort den Login von root verbieten.

Dann noch den ssh-Daemon neu starten:

/etc/init.d/sshd restart
# oder
service sshd restart
# oder
systemctl restart sshd.service

Welches Kommando das bei Dir tut hängt von der Distribution und der Version der derselben ab.

Linuxhase

achte vorher darauf, dass beide Clients im gleichen Netz sind.

der user ist einer der local users die du auf dem Zielhost hast.

Zb. Wenn dein User auf deinem Zielhost "ubuntu" heisst, musst du 

"ssh ubuntu@192.127.0.0"

eingeben

als port ist standardmässig schon port 22 festgelegt. Falls du den Defaultport nicht in einem anderen programm nutzt würde dir raten den default port zu benutzen.

auf dem Zielhost müsstest du noch

sudo apt-get install openssh-server

installieren.

Auf deinem Client musst du dann

sudo apt-get install openssh-client

installieren.

Hier das hilft dir sicherlich weiter:
https://help.ubuntu.com/lts/serverguide/openssh-server.html

Eventuell musst du noch einen Private und public key erstellen die Anleitung dazu ist auf der Webseite.


gibt auf deinem "Ziel-Pc" (auf den du dich über SSH einloggen willst) ifconfig immTerminal ein, da findest du dann die IP. Den user solltest du wissen, steht aber auch zB im Terminal vorne dran, vor der Zeile wo du was eingibst.

Nur ein Hinweis:

192.127.0.0

ist eine öffentliche IP-Adresse, die in einem lokalen Netzwerk nichts zu suchen hat.
Hier die zulässigen lokalen Bereiche:

10.0.0.0 bis 10.255.255.255

172.16.0.0 bis 172.31.255.255

192.168.0.0 bis 192.168.255.255

Alle anderen, wie auch die 192.127.0.0 , dürfen nur benutzt werden, wenn der Computer keinen Zugang zum Internet hat.

Der ssh server muss in diesem beispiel nur auf der 192.127.0.0 laufen auf dem angegebenen port.

Übrigens: merkwürdige ip. Bist du sicher das es die überhaupt gibt?

Zum thema credentials: natürlich die des zielsystems

Ein Linux PC muss die SSH Schnittstelle eingeschaltet haben (SSH-Server)

internetrambo 30.06.2017, 15:51

ehm hat jeder linux pc diesen server installiert?

1
XGamer11208 30.06.2017, 15:54
@internetrambo

Kann sein..

z.B. Debian hat SSH Server standartmäßig aktiviert

Du kannst das aber mit dem apt-Paketmanager installieren
apt-get install openssh-server

1

Was möchtest Du wissen?