SSH-Tunneling zwischen zwei Servern

SSH-Tunneling zwischen zwei Servern

Ich versuche, einen SSH-Tunnel zwischen zwei VPS für eine sichere MySQL-Replikation zu erstellen. Ich folge diesen Schritten (nur Schritt 1 lesen: SSH-Tunneling einrichten): https://www.digitalocean.com/community/tutorials/wie-sichert-man-mysql-replication-using-ssh-on-a-vps Beide Server laufen mit dem Betriebssystem Ubuntu 14.04. Das Problem tritt auf, wenn ich versuche, den Tunnel auf meinem Slave-Rechner zu erstellen, indem ich Folgendes ausführe:

ssh -L 33061:localhost:3306 [email protected] -f -N

Ich bekomme diese Antwort:

This account is currently not available.

Ich habe einige Tests durchgeführt. Wenn ich versuche, eine Verbindung vom Slave zum Master herzustellen mit

ssh '[email protected]' //before to execute: usermod -s /sbin/nologin tunneluser

es funktioniert, also sind meine Schlüssel korrekt. Es scheint, dass das Problem in diesem Schritt liegt:

usermod -s /usr/sbin/nologin tunneluser

Als ich das das erste Mal ausprobiert habe, hat es gut funktioniert, aber ich kann es nicht noch einmal reproduzieren. Ich verwende dieselben Images meiner VPS, ich folge denselben Schritten, es gibt keinen Unterschied in der Umgebung. Welche Cloud ist das Problem?

Antwort1

Sie haben in den Anweisungen, denen Sie folgen, die folgende Zeile übersehen:

Debian- und Ubuntu-Benutzer ersetzen /sbin/nologin durch /usr/sbin/nologin

Ihr Tunnelbenutzerkonto verfügt daher über keine gültige Shell und Sie können sich nicht anmelden.

Antwort2

Ich habe meinen Fehler gefunden!

Das Problem lag in MS Word. Ich habe alle Befehle in einer Doc-Datei gespeichert und sie dann einfach kopiert und eingefügt. MS Word konvertiert in manchen Fällen normale -in längere . Dieser längere Bindestrich unterbricht also meinen letzten Befehl:

ssh -L 33061:localhost:3306 [email protected] -f -N

OMG, ich habe damit 8 Stunden verloren!

verwandte Informationen