パスワード認証のSSHって殆無いが、極たまーに そんなサーバーあったりする。特に IBM i のデフォルトインストールのままだと...。
対話式ではパスワード入力すれば良いがバッチ処理はどうか? IBM i の yum でも sshpass が用意されているのでそれで OK 🐄
sshpass インストール
yum install sshpass
コマンドでインストール
$ yum install sshpass
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> Package sshpass.ppc64 0:1.06-1 will be インストール
--> 依存性解決を終了しました。
依存性を解決しました
================================================================================================================================================================
パッケージ アーキテクチャ バージョン リポジトリー 容量
================================================================================================================================================================
インストールしています:
sshpass ppc64 1.06-1 ibmi-base 30 k
トランザクションの要約
================================================================================================================================================================
インストール 1 Packages
総ダウンロード容量: 30 k
インストール済み容量: 30 k
これでいいですか? [y/N]y
パッケージをダウンロードしています:
(1/1): sshpass-1.06-1.ibmi7.2.ppc64.rpm | 30 kB 00:00:00
----------------------------------------------------------------------------------------------------------------------------------------------------------------
合計 82 kB/s | 30 kB 00:01
トランザクションのチェックを実行してします。
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
インストールしています : sshpass-1.06-1.ppc64 1/2
インストール:
sshpass.ppc64 0:1.06-1
使い方
sshpassの使い方が2パターンある。
- 引数にパスワードを渡す(
-p
オプション) - 環境変数
SSHPASS
を使う(-e
オプション)
引数を使う例.sh
sshpass -p "pwd" ssh "hoge_user@hoge_host"
環境変数を使う例.sh
export SSHPASS="pwd"
sshpass -e ssh "hoge_user@hoge_host"
以上