Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Cara menggunakan arahan ssh untuk mengira maklumat kluster yang diedarkan dalam Linux Shell

Cara menggunakan arahan ssh untuk mengira maklumat kluster yang diedarkan dalam Linux Shell

WBOY
WBOYke hadapan
2023-05-11 15:52:06905semak imbas

1. Idea mengira maklumat kelompok yang diedarkan

Gunakan arahan log masuk jauh tanpa kata laluan untuk membolehkan satu mesin mengakses mesin dalam kelompok lain. Oleh itu, terdapat beberapa langkah penting untuk dicapai:

  • Ketahui cara menggunakan shh

  • Mencapai log masuk tanpa kata laluan

  • Tulis program shell

2. Prinsip penyulitan SSH

Teknologi penyulitan asimetri ialah kaedah penyulitan yang menggunakan kunci berbeza untuk penyulitan dan penyahsulitan. Antaranya, RSA dan DSA ialah kaedah penyulitan asimetri. Sudah tentu, algoritma penyulitan asimetri mempunyai premis, iaitu, terdapat sepasang kunci yang boleh menyulitkan dan menyahsulit antara satu sama lain Biasanya pasangan kunci ini akan menjadi kunci awam dan kunci peribadi pemegangnya. Kunci awam ialah kunci yang orang lain boleh tahu, manakala kunci persendirian hanya boleh diketahui oleh pemegangnya. Sudah tentu, jika kunci persendirian dibocorkan kepada orang luar, mungkin terdapat isu keselamatan maklumat.

Andaikan: A mahu menghantar data yang disulitkan kepada B. Kaedah pertama ialah: A menggunakan kunci peribadinya sendiri untuk menyulitkan, dan B menggunakan kunci awam A untuk menyahsulit selepas memperoleh data. Kaedah kedua ialah: A menggunakan kunci awam B untuk menyulitkan data, dan B menggunakan kunci peribadinya sendiri untuk menyahsulit data selepas memperolehnya.

Log masuk jauh SSH menggunakan kaedah pertama.

3. Arahan SSH

Kaedah yang biasa digunakan ialah

ssh -i [nama fail kunci peribadi] -p [nombor port] pengguna@nama hos [dilaksanakan Perintah]

Nama fail kunci persendirian lalai kepada $HOME/.ssh/id_rsa atau $HOME/.ssh/id_dsa dan nombor port lalai kepada 22.

Sebagai contoh :

ssh   myname@128.180.146.89  #输入目标主机的密码后进行远程操作,exit命令退出

4 Gunakan ssh-keygen dan ssh-copy-id untuk mencapai log masuk tanpa kata laluan

ssh-keygen     #直接全部回车,先都默认

Kemudian fail pasangan kunci akan dijana dalam direktori $HOME/.ssh/ , antaranya *.pub Disatukan menjadi fail kunci awam, dan satu lagi ialah fail kunci peribadi.

Seterusnya, salin kandungan fail kunci awam ke $HOME/.ssh/authorized_keys pengguna hos sasaran. Kaedah salinan boleh dikendalikan secara manual oleh anda sendiri. Anda juga boleh menggunakan arahan berikut untuk mencapai

ssh-copy-id -i [public key file name] user$hostname

Contohnya:

ssh-copy-id -i  $HOME/.ssh/id_rsa.pub  myname@128.180.146.89

dan kemudian Jalankan arahan log masuk jauh untuk mencapai log masuk tanpa kata laluan. Jika kata laluan masih diperlukan untuk log masuk kedua, ia mungkin disebabkan oleh isu kebenaran fail dan direktori fail. Ia juga mungkin kerana kunci persendirian dan kunci awam sambungan bukan sepasang.

5. Pelaksanaan Skrip Shell Linux

fail sshtest.sh:

#!/bin/bash
func___setenv(){
   RTS_ECT_DIR="$HOME"
   #.....
}
######################################
#
#   程序主体
######################################
 
#调用环境变量
func___setenv
 
#读取机器连接信息
while read line
do
ssh_cmd=
ssh_linkhost=`echo ${line}`
    while  read  cmdline
    do
    #空命令行跳过
    if [ -z "$cmdline" ]; then
        continue 
    fi
    
    #读取的命令行拼接;
    if [ ! -n "$ssh_cmd" ]; then
        ssh_cmd=`echo ${$cmdline}` ;
    else
        ssh_cmd="${ssh_cmd};"`echo ${$cmdline}` ;
    fi
    done <${RTS_ECT_DIR}/sshcmd.cfg
#执行远程命令
ssh $ssh_linkhost $ssh_cmd </dev/null
done <${RTS_ECT_DIR}/sshlink.cfg

fail sshlink.cfg: Kunci mesti dikonfigurasikan terlebih dahulu sebelum anda boleh log masuk tanpa kata laluan

myname@128.180.146.89
myName@128.180.146.90
Myname@128.180.146.91

fail sshcmd.cfg: isikan

ps -ef|grep java 
df -h

mengikut keperluan >Kemudian gelung while hanya digelung sekali. Kerana semasa membaca baris akan meletakkan maklumat gelung ke dalam input standard, dan arahan ssh akan membaca semua penimbal input, jadi sementara tidak berada dalam gelung. Jadi arahan ssh perlu diubah hala

Atas ialah kandungan terperinci Cara menggunakan arahan ssh untuk mengira maklumat kluster yang diedarkan dalam Linux Shell. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:Apakah konsep linux monoArtikel seterusnya:Apakah konsep linux mono