GNU/Linux >> Linux Esercitazione >  >> Linux

Come eseguire SSH e SCP in modalità batch (solo quando è abilitato l'accesso senza password)

Quando hai abilitato l'accesso senza password, potresti usare SSH per eseguire il comando in modalità batch su una macchina remota o usare SCP per copiare file da/sulla macchina remota.

Se si verificano problemi con l'accesso senza password, il programma batch potrebbe finire in loop o in timeout.

In questo articolo, esaminiamo come istruire ssh/scp per eseguire l'operazione solo se puoi farlo senza attendere la password.

Prima di provare questo, assicurati che l'accesso senza password sia impostato tra il tuo locale host e host remoto.

1. ssh -o "Modalità batch sì" Esempio di utilizzo

Se hai abilitato l'accesso meno password, l'esempio seguente accederà all'host remoto ed eseguirà il comando who senza richiedere la password.

local-host# ssh ramesh@remote-host who

Se l'accesso senza password non è abilitato, verrà richiesta la password sull'host remoto come mostrato di seguito.

local-host# ssh ramesh@remote-host who
ramesh@remote-host's password: 

Se usi ssh -o "BatchMode yes", eseguirà ssh solo se l'accesso senza password è abilitato, altrimenti restituirà un errore e continuerà.

local-host# ssh -o "BatchMode yes" ramesh@remote-host Command

Esecuzione del comando in modalità batch tramite SSH — caso riuscito

local-host# ssh -o "BatchMode yes" ramesh@remote-host who
..
[Note: This will display the output of remote-host's who command]

Esecuzione del comando in modalità batch tramite SSH — Caso di errore

local-host# ssh -o "BatchMode yes" ramesh@remote-host who
Permission denied (publickey,password).

Nota: Se non hai usato -o "BatchMode yes", il comando precedente avrebbe richiesto la password per il mio account sull'host remoto. Questa è la differenza fondamentale nell'utilizzo dell'opzione BatchMode sì.

2. scp -B opzione Esempio di utilizzo

Se usi l'opzione scp -B, eseguirà scp solo se l'accesso senza password è abilitato, altrimenti uscirà immediatamente senza attendere la password.

$ scp -B file root@IP:PATH

SCP in modalità batch:caso riuscito

local-host# scp -B /etc/yp.conf ramesh@remote-host:/tmp
yp.conf            100%   84     0.1KB/s   00:00

SCP in modalità batch — Caso di errore

In questo esempio, se scp è possibile senza autenticazione, il comando verrà eseguito altrimenti uscirà come mostrato di seguito.

local-host# scp -B /etc/yp.conf ramesh@remote-host:/tmp
Permission denied (publickey,password).
lost connection

Linux
  1. Come configurare l'accesso SSH senza password

  2. CentOS / RHEL:come disabilitare / abilitare l'accesso ssh per utenti root e non root diretti

  3. Come configurare le chiavi SSH per l'accesso ssh "senza password" in Linux

  4. Come configurare le chiavi SSH per l'accesso SSH "senza password" su CentOS/RHEL

  5. Come tornare a scp in locale quando sono già passato a una macchina remota?

Come configurare l'accesso senza password SSH su CentOS 8 / RHEL 8

Come configurare l'accesso SSH senza password utilizzando ssh-keygen?

Come configurare l'accesso senza password SSH in Rocky Linux

Come configurare l'accesso senza password SSH in AlmaLinux

Esegui SSH e SCP senza inserire la password su openSSH

Suggerimenti per Ubuntu:come accedere senza inserire nome utente e password