SSH接続用のカスタムコマンドを設定する方法

SSH接続用のカスタムコマンドを設定する方法

現在の端末を使用して、以下を介してクラスタに接続します。

>ssh -p port user_name@address
>user_name@addresspassword's:
>password 

connectこれらの基本要素を含む設定ファイルなどのカスタムコマンドを作成したいと思います。

# These contents can be edited
port: xxxx
user_name: xxxx
address: xxxx
password: xxxx

この設定が完了したら、端末に「connect」と入力してクラスタに接続しようとします。

答え1

まずインストールしてくださいsshpass

apt-get/yum install sshpass -y

次の項目に追加してください~/.bashrc

connect()
(
    . ~/.ssh/variables_for_ssh.sh
    SSHPASS=$password sshpass -e ssh -p "$port" "$username@$address"
)

variables_for_ssh.sh次の内容で、名前がin ~/.ssh/(または自分だけが読むことができる別のディレクトリ)のファイルを作成します。

password='yourpassword'
port=portnumber
username='your username'
address='your address'

次に、ユーザーとルートのみがファイルを読み書きできるように権限を変更します。

chmod 600 ~/.ssh/variables_for_ssh.sh

何かを変えるとvariables_for_ssh.sh~/.bashrcconnect

答え2

~/.ssh/config を編集します。

Host Address
User user_name
Hostname address
Port xxx

これで接続できます

 $ ssh Address 

さらに短縮するには、エイリアスを追加してください。

~/.bashrc:

 alias connect="ssh Address" 

パスワードのない安全なログインを許可するには、SSH公開鍵を設定してリモートサーバーに配置する必要があります。

パスワードをプレーンテキストとして保存したり、エイリアスを使用してsshpass(パスワードをプレーンテキストとして保存)などのコマンドを短縮したりすることはお勧めできません。この回答

関連情報