SSH üzerinden uzaktan komut çağırmanın en iyi yolunu arıyorum. Kullanıcı 'rpcall' oluşturuyorum, yeni sertifika oluşturuyorum ve yetkili_anahtarları dolduruyorum. İle biraz daha güvenli hale getirin
from="ip",no-agent-forwarding,no-X11-forwarding,no-port-forwarding,no-pty ssh-rsa ......
şimdi rpcall kullanıcısı terminale giriş yapamıyor
ssh -l rpc 192.168.12.1
PTY allocation request failed on channel 0
ancak herhangi bir komutu çalıştırmak mümkündür
ssh -l rpc 192.168.12.1 cat /etc/passwd
Komut yürütmeyi yalnızca bir işleme komut dosyasıyla sınırlandırabileceğim herhangi bir çözüm var mı? Örneğin /home/rpcall/bin/command.sh
Ben bu kullanıcı için bash kabuk kurdu ve .bashrc force run işleme komut dosyası kullanarak, ama ssh çağrı parametreleri geçmek nasıl bilmiyorum.
rpcall kullanıcısı için .bashrc
/home/rpcall/bin/command.sh $params1 $params2
exit
diğer makineden ssh çağrısı
ssh -l rpcall 192.168.12.1 "param1" "param2"
SSH_ORIGINAL_COMMAND
ortam değişkeni üzerinden erişebilir . Bu şekilde parametreler bu komuta iletilebilir, sadece bu ortam değişkenini ayrıştırması ve istenen işi yapması gerekir.