1. 公開鍵と秘密鍵をローカルで生成する
ssh-keygen -t rsa -b 4096
上記のコマンドは、ユーザー ルート ディレクトリの .ssh フォルダーに id_rsa と id_rsa.pub という 2 つのファイルを生成します。id_rsa は秘密キー ファイル、id_rsa.pub は公開キー ファイルです。
2. 公開キーの内容をリモートサーバーのauthorized_keysにコピーします。
サーバーにログインし、.ssh フォルダーを開き、authorized_keys ファイルを作成し、ファイルのアクセス許可を 600 に変更し、vim を使用してローカルの公開キーの内容をauthorized_keys にコピーします。
cd ~/.ssh
touch authorized_keys
chmod 600 authorized_keys
vim authorized_keys # 这步把id_rsa.pub的内容拷贝进去,保存退出
3. vscode 構成ファイルを変更し、秘密キーの場所を指定します。
上記の構成ファイルを開き、IdentityFile フィールドを追加します。
Host Server
HostName 目标机ip
User liaobaoxin
IdentityFile "/Users/baoxin/.ssh/id_rsa" #私钥地址
その後、前のプロセスに従って、パスワードなしでリモートログインできます。
4.踏み台マシンのパスワード不要ログイン
ステップ2に従って、スプリングボードマシンとターゲット マシンの両方の .ssh フォルダーにauthorized_keys ファイルを作成し、ローカル公開キーの内容をコピーし、ファイルのアクセス許可を 600 に変更し、vscode 構成ファイルを変更して、両方のスプリングボードに次の内容を追加します。マシンとターゲット マシンIdentityFile [本地私钥地址]
:
Host JumpMachine
#跳板机ip
HostName 跳板机ip
#登入的用户名,可以不是root
User liaobaoxin
#上文提到的sshd服务端口
Port 22
IdentityFile "/Users/baoxin/.ssh/id_rsa"
#目标机名称,可以随便取
Host TargetMachine
#目标机ip
HostName 目标机ip
#登入的用户名,可以不是root
User liaobaoxin
IdentityFile "/Users/baoxin/.ssh/id_rsa"
#特别注意这里不需要设置端口了
#起跳转作用的代码,可以直接复制,注意JumpMachine需要与前面跳板机名称相同
ProxyCommand ssh -W %h:%p JumpMachine
ターゲットマシンにリモートでログインするためにパスワードを入力する必要はありません