GNU/Linux >> LINUX-Kenntnisse >  >> Linux

SSH ohne Beschaffung von .bashrc

Wie in der anderen Antwort besprochen, startet der OpenSSH-Server, wenn sich ein SSH-Client mit dem OpenSSH-Server verbindet, im Allgemeinen eine Shell-Sitzung im Namen des Clients und verwendet dabei die Login-Shell des Benutzers:

  1. Wenn der Client eine interaktive Sitzung anfordert, startet der Server die Login-Shell des Benutzers.
  2. Wenn der Client die Ausführung eines Befehls anfordert, verwendet der Server die Login-Shell des Benutzers, um den Befehl als Shell-Befehl auszuführen.
  3. Dienstprogramme wie scp , rsync , und git die ssh für den Transport verwenden, werden einen Befehl anfordern, der auf dem entfernten System ausgeführt werden soll, also fallen sie unter #2.

Wenn Sie etwas in den Shell-Startdateien des entfernten Benutzers haben, das bewirkt, dass die Shell beendet wird, dann werden Sie Schwierigkeiten haben, hineinzukommen.

SFTP ist jedoch ein Sonderfall. Der OpenSSH-Server darf konfiguriert werden, um SFTP zu unterstützen, ohne einen externen Befehl zu starten. Wenn Wenn dies der Fall ist, können Sie sftp verwenden, um eine Verbindung zum Server herzustellen und den .bashrc zu löschen, umzubenennen oder zu ändern Datei, die das Problem verursacht.

Dies hängt davon ab, wie der Server für die Unterstützung von sftp konfiguriert ist. Es kann sftp-Sitzungen bedienen, indem es ein externes Programm (mit dem Namen sftp-server ). In diesem Fall hätten Sie die gleichen Probleme beim Zugriff wie bei Programmen wie scp . Oder der Server kann die sftp-Sitzung durch etwas bedienen, das als "internal-sftp" bezeichnet wird, was keinen Aufruf einer Shell erfordert. Es hängt nur davon ab, wie der jeweilige SSH-Server konfiguriert ist.


Linux
  1. Ssh – Shell-Skript zum Einloggen in einen SSH-Server?

  2. Ssh, Sudo, dann herunterladen?

  3. Tmux beschafft nicht die .tmux.conf?

  4. Wie starte ich in Bash, wenn ich in meinen Server ssh'e?

  5. VNC-Server ohne X Window System

Installieren Sie den SSH-Server Ubuntu 22.04

.bashrc vs. .bash_profile

So verwenden Sie SSH, um eine Verbindung zu einem Remote-Server herzustellen

SSH-Tunneling und Proxying

SSH-Server

So führen Sie SSH zum Server über Linux