su パスワードを自動的に送信するには?

su パスワードを自動的に送信するには?

に切り替えようとしたときに、以下のスクリプトからパスワードを自動的に送信するにはどうすればよいですかsu

現在SSH経由でホスト名にログインでき、自動的にusingと入力しますssh passwordが、sshpassその過程で私に尋ねます。su password

# sshpass -p 'ssh_password' ssh myuser@$hostname "su -c \"cd /some/path/ && ls -l\""
You are trying to access a restricted zone. Only Authorized Users allowed.
Password:

似たようなことを試しましたが、うまくいきません。

sshpass -p 'ssh_password' ssh myuser@$hostname "su myuser su_password -c \"cd /documents/backups/ && ls\""

以下に私がテストした3つの方法を示します。 3番目の方法だけを受け入れ、su_password残りの2つの方法はパスワードを要求し、パスワードを入力すると答えが出ます。su: incorrect password

1-) ユーザー名と su_password を使ってみました(失敗)

# sshpass -p $ssh_password ssh -t $myuser@$hostname "su $myuser 'MysuPassword123' -c \"cd /some/path/ && ls\""
You are trying to access a restricted zone. Only Authorized Users allowed.
Password:
su: incorrect password
Connection to AAA.BBB.CCC.DDD closed.

2-) ユーザー名のみで試みる(失敗)

# sshpass -p $ssh_password ssh -t $myuser@$hostname "su $myuser -c \"cd /some/path/ && ls\""
You are trying to access a restricted zone. Only Authorized Users allowed.
Password:
su: incorrect password
Connection to AAA.BBB.CCC.DDD closed.

su3-)ユーザー名/su_passwordなしで試してみてください(成功)

# sshpass -p $ssh_password ssh -t $myuser@$hostname "su -c \"cd /some/path/ && ls\""
You are trying to access a restricted zone. Only Authorized Users allowed.
Password:
docs file1 file2
Connection to AAA.BBB.CCC.DDD closed.

どうすればいいですか?よろしくお願いします。

ベストアンサー1

おすすめ記事