Man kann per ssh recht sicher Programme auf anderen Rechner ausführen. Der verwendete Key kann dann nur dazu benutzt werden ein bestimmtes Programm auszuführen. Dazu erzeugt man einen ssh-key ohne Passphrase. Lässt also die Passphrase einfach leer. Und gibt als Pfad einen anderen Namen an.
[test@tn ~]$ ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/home/test/.ssh/id_rsa): /home/test/.ssh/id _rsa_on Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/test/.ssh/id_rsa_on. Your public key has been saved in /home/test/.ssh/id_rsa_on.pub. The key fingerprint is: 1f:5b:04:7b:50:f1:2c:3c:5a:db:71:df:01:8b:a1:3d test@tn.xxx.de [test@tn ~]$ ssh-keygen -t rsa -b 4096 Generating public/private rsa key pair. Enter file in which to save the key (/home/test/.ssh/id_rsa): /home/test/.ssh/id _rsa_off Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/test/.ssh/id_rsa_off. Your public key has been saved in /home/test/.ssh/id_rsa_off.pub. The key fingerprint is: 9e:75:41:16:50:2c:e0:3d:2e:0d:c3:22:85:fa:cf:2b test@tn.xxx.de Nun haben wir unter .ssh vier Datein mehr:[test@tn .ssh]$ ls id_rsa id_rsa_off id_rsa_off.pub id_rsa_on id_rsa_on.pub id_rsa.pub
Die privaten Schlüssel id_rsa_off und id_rsa_on und die öffentlichen Schlüssel id_rsa_off.pub und id_rsa_on.pub. Wenn man nun diese beiden Schlüssel auf einem Rechner in die .ssh/authorized_keys2 einfügt, kann man davor noch bestimmte Kommandos einfügen:
[test@woanders .ssh]$ cat authorized_keys2 command="/usr/local/bin/mein_command ON",no-pty,no-port-forwarding <der öffentliche Schlüssel (id_rsa_on.pub> command="/usr/local/bin/mein_command OFF",no-pty,no-port-forwarding <der öffentliche Schlüssel (id_rsa_off.pub>
Damit wird dann immer beim Verbinden mit einem der Schlüssel das Kommando auf dem Rechner ausgeführt. Wie verbindet man sich nun mit dem entsprechenden Key? Man übergibt dem ssh einfach mit der Option -i den entsprechenden Key.
ssh -i ~/.ssh/id_rsa_on test@woanders.xxx.de
So kann man aus Scripten heraus relativ gut Programme ausführen. Man muss allerdings erwähnen, das jemand der auf dem Rechner eingebrochen ist, auch diese Programme ausführen darf. Also vorsicht bei der Programmwahl!