環境
- さくらVPS
- windows10
- CentOS7
- PuTTY(日本語版)
- puttygen.exe
- pscp.exe
- Apache
- powershell.exe
前準備
1.鍵ペア(公開鍵と秘密鍵)を作成 puttygen.exe
C.「Generate」ボタンをクリック
鍵生成中に 空白の領域の上でマウスをランダムに激しく動かす。
2.公開鍵の設置 pscp.exe
A.PC側で公開鍵をサーバへ転送
- powershell.exeを起動させる。
- powershell.exeがあるディレクトリ(Puttyをインストールしたフォルダ)に移動し、作成した公開鍵をSSHサーバのドキュメントディレクトリへSSH通信経由でコピーする
PS C:\Program Files> cd .. PS C:\> cd '.\Program Files (x86)\PuTTY' PS C:\Program Files (x86)\PuTTY> .\pscp -P ポート番号 鍵のディレクトリ\id_ed25519.pub ユーザ名@サーバIPアドレス:. ユーザ@サーバIPアドレス's password: ←ユーザパスワード入力(内容は表示されない)
B.ザーバ側で公開鍵の準備
ア.転送された公開鍵があるか確認
[ユーザ@localhost ~]$ ls id_ed25519.pub
イ.暗号化なしの公開鍵をOpenSSH互換に変換して「authorized_keys」として保存
[ユーザ@localhost ~]$ ssh-keygen -i -f id_ed25519.pub >> authorized_keys [ユーザ@localhost ~]$ ls ←確認 authorized_keys id_ed25519.pub
ウ.保存ディレクトリ「.ssh」を作成しパーミッション(ユーザのみ読書き実行OK)を変更する
[ユーザ@localhost ~]$ mkdir .ssh [ユーザ@localhost ~]$ chmod 700 .ssh
エ.保存ディレクトリ「.ssh」へ「authorized_keys」を移動し、パーミッション(ユーザのみ読書きのみOK)を変更する
[ユーザ@localhost ~]$ mv authorized_keys .ssh [ユーザ@localhost ~]$ chmod 600 .ssh/authorized_keys
オ.転送した公開鍵「ed25519.pub」を削除
[ユーザ@localhost ~]$ rm -f id_ed25519.pub [ユーザ@localhost ~]$ ls ←確認 [ユーザ@localhost ~]$