たとえば、パスワードのないキーを使用して一貫した同期を実行し、パスワードで保護されたキーを使用してサーバーにSSHのみで接続できるようにしたいとします。これを行う一般的な方法scponly
は、私のサーバーアカウントのログインシェルを変更することですが、これはグローバルすぎます。 1つの項目でauthorized_keys
これを実行できますか?
答え1
command
Authorized_keysのキーワードを使用して、次のように個々のコマンドの実行を特定のキーに制限できます。
command="/usr/local/bin/mysync" ...sync public key...
更新:単純なスクリプトをコマンドとして指定すると、ユーザーが元のコマンドを提供したことを確認できます。
#!/bin/sh
case "$SSH_ORIGINAL_COMMAND" in
/path/to/unison *)
$SSH_ORIGINAL_COMMAND
;;
*)
echo "Rejected"
;;
esac