Skip to content

Apple Silicon な mac で sshpass を使い、パスワード認証の SSH 接続をワンライナーで実行する

以前に M1 Mac に sshpass をインストールする というメモを書きました。 Apple Silicon 搭載の M1 mac へ sshpass をインストールする手順は変わらないのですが、sshpass のバージョンが上がっていた為、改めてインストール方法をメモしておきます。

sshpass とは?

通常、SSH 接続する際、ワンライナーや ~/.config などの設定ファイルから「接続用のパスワード」を入力することは出来ません。 パスワード認証の場合、ssh コマンドを実行した後、対話的にパスワードを入力する必要があります。 これを「(対話的な入力を用いず) ワンライナーでパスワードも指定して SSH 接続したい」場合に sshpass を利用することが出来ます。

インストール

インストールは以下を実行します。

1
2
3
4
5
6
curl -LO https://sourceforge.net/projects/sshpass/files/latest/download/sshpass/1.10/sshpass-1.10.tar.gz
tar xvf sshpass-1.10.tar.gz
cd sshpass-1.10
./configure
make
sudo make install

/usr/local/bin/ 配下にインストールされました。

1
2
$ which sshpass
/usr/local/bin/sshpass

ファイル名の通り、インストールされたバージョンは 1.10 です。

1
2
3
4
5
6
7
8
$ sshpass -V
sshpass 1.10
(C) 2006-2011 Lingnu Open Source Consulting Ltd.
(C) 2015-2016, 2021-2022 Shachar Shemesh
This program is free software, and can be distributed under the terms of the GPL
See the COPYING file for more information.

Using "assword" as the default password prompt indicator.

基本的な使い方

以下の条件で SSH 接続したいとします。

  • 10.0.0.1 というホストが対象
  • ユーザ名は user
  • パスワードは password

この場合は以下のように実行します。

1
sshpass -p "password" ssh user@10.0.0.1