WinSCPを使って公開鍵認証でログインする方法(PuTTYgenで鍵生成)
WinSCPを使って公開鍵認証でログインする方法を紹介します。
サーバはさくらインターネットを使い、WinSCPに同梱されているPuTTYgenで鍵を生成し、「UTF-8 TeraTerm Pro with TTSSH2」でログインする手順で解説します。
1.WinSCPのダウンロード・インストール
WinSCPの日本語ページにある「Download」をクリック。
「Installation package」をクリック。
これでダウンロードが開始します。ダウンロードしたアーカイブをダブルクリックすればインストールが開始します。
インストール時に「日本語」を選択すれば日本語化されます。
2.公開鍵・秘密鍵の生成
スタートメニューから、WinSCPに付属しているPuTTYgenを起動。
開いた画面の「Generate」をクリック。
真ん中の空白部分でマウスをランダムに動かしてキーを生成します。動かさないと生成が進みません。
生成が完了すると下のような画面になります。
「Public key for pasting into OpenSSH authorized_keys file:」の下に表示された内容(これが公開鍵)をマウスコピーして、id_rsa.pubというファイル名で保存(ファイル名は何でもかまいません)。
「Key passphrase」にパスフレーズ、「Confirm passphrase」に同じパスフレーズを入力し、「Save private key」をクリックして、秘密鍵を保存します。ファイル名の拡張子は「.ppk」になります。
2.公開鍵をサーバに設定
公開鍵でログインしたいユーザー名でサーバにログインし、ホームディレクトリで次のコマンドを実行します。
$ mkdir ~/.ssh
$ chmod 700 ~/.ssh
$ cd ~/.ssh
$ touch authorized_keys
$ chmod 600 ~/.ssh/authorized_keys
続いてviを起動します。
$ cd .ssh
$ vi authorized_keys
さきほど保存したid_rsa.pubを任意のエディタで開き、その内容を開いているviエディタにペーストします。
viにペーストするときは「i」キーを押下します。ペーストは右クリックで行えます。
保存するには「Esc」キーを押下し、「:wq」とキーを入力してください。
3.WinSCPの起動
WinSCPを起動します。最初は次のような画面が表示されるので、ファイルプロトコルは「SFTP」を選択し、ログインしたいホスト・ユーザ名を入力し(パスワードはあとで聞かれるので入力不要)、さきほど保存した秘密鍵を指定して「ログイン」をクリック。
サーバに接続します。
「キャッシュがみつかりませんでした」という警告が表示されるので、そのまま接続する場合は「はい(キャッシュに保存)」「いいえ(キャッシュに保存しない)」のどちらかを選択。
続行するとパスフレーズを尋ねられるので、鍵生成時のパスフレーズを入力。
これでログインできました。
- SSHポートフォワーディング(トンネリング)とは
- TeraTermで「unknown Encrypt algorithm(ctos)」というエラーになる場合の対処
- 公開鍵と秘密鍵の仕組みや違いについて分かりやすく説明してみた
- 公開鍵認証でサーバにログインする方法(サーバで鍵生成)