GNU/Linux >> Belajar Linux >  >> Linux

Cara Menjalankan SSH dan SCP dalam Mode Batch (Hanya ketika login Tanpa Kata Sandi diaktifkan)

Saat Anda mengaktifkan login tanpa kata sandi, Anda mungkin menggunakan SSH untuk menjalankan perintah dalam mode batch pada mesin jarak jauh atau menggunakan SCP untuk menyalin file dari/ke mesin jarak jauh.

Jika ada beberapa masalah dengan kata sandi yang kurang login, program batch Anda mungkin berakhir dengan loop atau timeout.

Pada artikel ini, mari kita tinjau bagaimana menginstruksikan ssh/scp untuk melakukan operasi hanya jika Anda dapat melakukannya tanpa menunggu kata sandi.

Sebelum Anda mencoba ini, pastikan login tanpa kata sandi diatur antara lokal Anda host dan host jarak jauh.

1. ssh -o “BatchMode yes” Contoh Penggunaan

Jika Anda mengaktifkan password less login, contoh berikut akan login ke remote host dan menjalankan perintah who tanpa meminta password.

local-host# ssh ramesh@remote-host who

Jika password less login tidak diaktifkan, itu akan meminta password pada remote host seperti yang ditunjukkan di bawah ini.

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

Jika Anda menggunakan ssh -o “BatchMode yes”, maka itu akan melakukan ssh hanya jika login tanpa kata sandi diaktifkan, jika tidak maka akan mengembalikan kesalahan dan berlanjut.

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

Eksekusi perintah mode batch menggunakan SSH — kasus sukses

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

Eksekusi perintah mode batch menggunakan SSH — Kasus kegagalan

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

Catatan: Jika Anda tidak menggunakan -o "BatchMode yes", perintah di atas akan meminta kata sandi untuk akun saya di host jarak jauh. Inilah perbedaan utama dalam menggunakan opsi BatchMode ya.

2. scp -B opsi Contoh Penggunaan

Jika Anda menggunakan opsi scp -B, scp hanya akan dijalankan jika login tanpa kata sandi diaktifkan, jika tidak maka akan langsung keluar tanpa menunggu kata sandi.

$ scp -B file root@IP:PATH

SCP dalam mode Batch — Kasus Berhasil

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

SCP dalam mode Batch — Kasus Kegagalan

Dalam contoh ini, jika scp dimungkinkan tanpa autentikasi, perintah akan dijalankan jika tidak maka akan keluar seperti yang ditunjukkan di bawah ini.

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

Linux
  1. CentOS / RHEL :Cara Menonaktifkan / Mengaktifkan login ssh pengguna root dan non-root langsung

  2. Cara Mengatur kunci SSH untuk login ssh "tanpa kata sandi" di Linux

  3. Cara Mengatur kunci SSH untuk Login SSH “tanpa kata sandi” di CentOS/RHEL

  1. Cara Mengatur Login SSH Tanpa Kata Sandi

  2. Bagaimana cara scp kembali ke lokal ketika saya sudah melakukan sshed ke mesin jarak jauh?

  3. bagaimana cara menonaktifkan login SSH dengan kata sandi untuk beberapa pengguna?

  1. Ssh – Bagaimana Ssh Meminta Kata Sandi Saat Semua Input dan Output Dialihkan?

  2. Cara Menonaktifkan Login SSH Dengan Kata Sandi

  3. Cara Melakukan SSH dan SCP Tanpa Password dari SSH2 ke OpenSSH