証明書でsshにログインする

2557 ワード

多くのLinuxサーバにログインすることがよくあります.以前はWindowsの下でSecureCRTを使用していましたが、比較的安心していました.構成はクラウドディスクに置いて、リアルタイムで同期することもできます.今MACを変えるのはそんなに使いやすいものではないようで、sshコマンドの登録のたびにパスワードを入力する必要があり、煩わしいです.最終的にiTerm+を見つけて証明書でsshにログインし、ipとユーザー名のパスワードを記憶する必要があるという問題を基本的に解決することができます.具体的な手順は次のとおりです.
一、証明書でsshにログインする
仮にマシンA sshからマシンBに至るとすると,Aをクライアント,Bをサーバと呼ぶ.
1、まずクライアントで証明書を生成し、コマンドを実行すると、以下の内容が得られます.
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/palance/.ssh/id_rsa): <name>
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in <name>.
Your public key has been saved in <name>.pub.
The key fingerprint is:
SHA256:7ut9SExi8YHdgUlGnpFgZaq8w8cLlBiBr6ZVFTamAV8 xxxx@xxxxdeMacBook-Pro.local

このコマンドは、現在のディレクトリで秘密鍵ファイル()、公開鍵ファイル(.pub)を生成し、後で使用する秘密鍵のパスワードを入力するように要求します.
2、クライアントで実行
scp <name>.pub <username>@<ssh_server_ip>:~
cp <name> ~/.ssh/

公開鍵ファイルをサーバにコピーする、秘密鍵ファイルをローカルにコピーする~/.sshの下.
3、サーバーで実行
cat  <name>.pub >> ~/.ssh/authorized_keys

やった!
クライアントで実行
ssh -i ~/.ssh/<name> <username>@<ssh_server_ip>

初めて秘密鍵のパスワードを入力させ、ローカルキー列に追加し、後で直接ログインすることができます.
二、iTermを使用して新しいProfileを追加し、Commandに:ssh-i~/.ssh/ @
できます.