Wie kann ich mit einem Remote-Server SSH ausführen, um Dateien zu durchsuchen und zu bearbeiten? Ich habe einen Benutzernamen und ein Passwort zu verwenden.
SSH ist standardmäßig in allen Ubuntu-Versionen enthalten, sodass Sie es nicht installieren müssen (+1, wenn es bereits vorhanden ist;))
Außer natürlich für den Fall, dass Sie einen SSH-Server für Ihren Ubuntu-Server wollen. In diesem Fall würden Sie
sudo apt-get install openssh-server
Das sollte Ihren Computer / Server bereit machen, ein SSH-Server zu sein.
Es ist ziemlich einfach zu bedienen:
ssh USER@SITE
Wenn mein Benutzername beispielsweise cyrex ist und die Site ubuntu.com lautet, würden Sie dies tun:
ssh [email protected]
Nehmen wir nun an, Sie möchten eine bubblegum.txt
von Ihrem Computer aufgerufene Datei auf Ihre Ubuntu-Site kopieren und diese Datei im /var/www
Ordner auf der Ubuntu-Site belassen. Sie können dies tun (vorausgesetzt, Ihr Benutzer verfügt über genügend Berechtigungen auf der Ubuntu-Site), indem Sie den SSH-Bruder SCP verwenden (der ebenfalls standardmäßig in Ubuntu enthalten ist):
scp bubblegum.txt [email protected]:/var/www
Beachten Sie den :
Abstand zwischen USER @ SITE und dem Ordner, in den Sie ihn kopieren möchten. Es ist derjenige, der beide Elemente trennt.
Nehmen wir nun an, Sie laden eine riesige Datei mit scp hoch und dann explodiert die Welt. Wie können Sie diese Datei weiterhin auf den Server hochladen? Dann hast du den großen Bruder von SCP, rsync (standardmäßig in Ubuntu). In vielerlei Hinsicht machen scp und rsync dasselbe, aber hier sind einige große Unterschiede zwischen ihnen:
In dem Fall, dass scp nicht die gesamte Datei hochladen konnte, kommt hier rsync ins Spiel, um zu retten. (Danke an Marco Ceppi für den Tipp. Stimmen Sie seinen Kommentar ab, wenn Sie Katzen und / oder Hunde mögen.)
Nehmen wir an, Sie haben den oben genannten Upload von scp durchgeführt und sind auf 60% gekommen. Wie können Sie mit diesen 60% weitermachen, ohne Ihre Zeit für den Upload zu verlieren? Sie würden dies tun:
rsync --progress --partial bubblegum.txt [email protected]:/var/www
Dadurch wird rsync angewiesen, den Fortschritt mit dem --progress
Flag auf eine vom Menschen lesbare Weise anzuzeigen. Außerdem wird rsync angewiesen, zu überprüfen und fortzufahren, wo die Datei bubblegum.txt mit dem --partial
Flag abgelegt wurde . Sie können den zu schreibenden Betrag auch mit dem Parameter -P vereinfachen, der mit --progress und --partial identisch ist.
rsync -P bubblegum.txt [email protected]:/var/www
Sie können den Upload sogar CTRL+ Cund wieder aufnehmen, indem Sie den obigen Befehl von rsync ausführen. Sehr cool, um die Fähigkeit zu haben, etwas jederzeit beliebig oft wieder aufzunehmen.
Für weitere Informationen zu rsync, das standardmäßig mit Ubuntu geliefert wird, können Sie die folgenden Terminalbefehle eingeben:
man rsync
info rsync
rsync --help
Geben Sie nun einen Port für SSH an. Um es zu spezifizieren, kannst du es so machen:
ssh [email protected] -p PORT
. Zum Beispiel: ssh [email protected] -p 1234
um ihn anzuweisen, Port 1234 für den SSH-Dienst zu verwenden. Dies muss zuerst auf dem Server konfiguriert werden, damit es funktioniert.
Um es zu konfigurieren, öffne einfach auf dem Server die Datei ssh_config wie folgt : nano /etc/ssh/ssh_config
und ändere die Zeile, die besagt, # port 22
auf einen anderen Port. Denken Sie auch daran, den Kommentar aus dieser Zeile zu entfernen. Es sollte so aussehen: port 1234
im obigen Beispiel.
Starten Sie jetzt einfach den ssh-Dienst auf dem Server neu und Sie sind fertig. So starten Sie den Dienst neu:
sudo restart ssh
oder
sudo /etc/init.d/ssh restart
HINWEIS - Sie können auch SSH aus GUI-Tools verwenden, filezilla
die die Option bieten, ssh anstelle von ftp zu verwenden. Auf ssh kann auch über das Ubuntu-Menü zugegriffen werden:
Hier haben Sie Zugriff auf verschiedene Optionen, einschließlich Windows-Freigabe, SSH und FTP :
Für weitere Informationen zu SSH können Sie einen der folgenden Befehle in der Konsole in Ihrer Ubuntu-Box verwenden:
man ssh
info ssh
ssh --help
Wenn Sie den Server durch Nautilus durchsuchen möchten, wie Sie es mit Dateien auf Ihrem lokalen Computer tun:
Gehen Sie zu "Datei" -> "Mit Server verbinden"
Wählen Sie "SSH" unter "Service Type"
Tragen Sie die IP-Adresse oder Domain unter "Server" ein
Fügen Sie Ihren Benutzernamen hinzu und aktivieren Sie "Lesezeichen hinzufügen", wenn der Speicherort in Ihren Lesezeichen gespeichert werden soll.
Der Ordner sollte sich für Sie öffnen.
quelle
Sie können
sshfs
ein Remote-Verzeichnis in Ihr lokales Dateisystem einbinden.Siehe https://help.ubuntu.com/community/SSHFS :
Befehlszeilenverwendung
Angenommen, Sie haben einen SSH-Server auf einem Remotecomputer, führen Sie einfach den Befehl SSHFS aus, um das Remoteverzeichnis bereitzustellen. In diesem Beispiel ist das Remote-Verzeichnis / projects auf dem Remote-Host far. Der lokale Einhängepunkt ist ~ / far_projects.
Absteigen,
Um es zu Ihrer / etc / fstab hinzuzufügen,
Beachten Sie, dass Sie beim Bearbeiten von fstab $ USER in Ihren Anmeldenamen ändern müssen, dies jedoch nicht erforderlich ist, wenn Sie Befehle eingeben (in diesem Fall übernimmt die Shell dies für Sie).
quelle
Wenn der SSH-Server bereits eingerichtet ist, öffnen Sie ein Terminal und geben Sie Folgendes ein:
Sie werden aufgefordert, Ihr Passwort einzugeben. gib es einfach ein Wenn Sie eine Portnummer benötigen, fügen Sie diese hinzu
-p PORTNUM
.quelle
Wenn Sie Vim, Pico usw. verwenden können, können Sie das Terminal verwenden:
Geben Sie Ihr Passwort ein und Sie sind dabei. Von dort aus ist es wie bei einem normalen Terminal, nur dass Sie keine GUI haben.
Beachten Sie , können Sie die ‚-X‘ Option hinzufügen, und wenn Ihr Server ein X - Server konfiguriert ist, Sie können GUI - Programme ausführen. Geben Sie einfach ihren Namen ein, wenn Sie -X hinzugefügt haben, und ein GUI-Fenster wird geöffnet.
Jetzt möchten Sie wahrscheinlich die passwortlose Anmeldung einrichten. Wenn Sie noch keinen Schlüssel haben,
ssh-keygen
geben Sie alle Standardeinstellungen ein und drücken Sie die Eingabetaste. Dann tu esssh-copy-id [email protected]
. Sobald dies erledigt ist, geben Sie einfach einssh [email protected]
und Sie müssen Ihr Passwort nicht mehr eingeben!Wenn Ihr Benutzername mit dem Benutzernamen Ihres Laptops übereinstimmt, brauchen Sie ihn nicht
MYUSER@
. Sie können es einfach tunssh mysite.com
. Sie können auch die-l MYUSER
Option anstelle von verwendenMYUSER@
Wenn Sie eine GUI wünschen, kann Nautilus dies tun. Datei Mit
->
Server verbinden->
[Wählen Sie 'SSH' und geben Sie die Anmeldedaten ein]->
Verbinden.Wenn Sie nur eine einzelne Datei kopieren möchten, verwenden Sie scp [sichere Kopie].
scp [email protected]:path/to/file.dat ./
Dadurch wird die Datei "~ / path / to / file.dat" in Ihr aktuelles Verzeichnis kopiert. Hinweis: Wenn nach dem kein Schrägstrich oder keine Tilde angezeigt wird, verhält
:
es sich so, als ob Sie sich in Ihrem Ausgangsverzeichnis [~/
] befinden. Wenn Sie hochladen möchten,scp ./local_file.dat [email protected]:
wird dies in Ihrem Home-Verzeichnis gespeichert.quelle
ssh -X -C user@host nautilus --no-desktop
in den GUI-Modus gehen :)quelle