VagrantのUbuntuとWinSCPでSSH接続する方法
Windows10上でLinuxを使うために、VirtualBox+VagrantでUbuntu 18.04LTSをインストールしてみました。
Ubuntuのフォルダやファイルのリモート操作には、「WinSCP」を使ってみます。
WinSCPを使うときに、秘密鍵をPuttyGenで変換する必要があったので、作業内容をメモ。(備忘録)
WinSCPとは?
コンピューター間の通信内容を暗号化して、安全にデータをやりとりできます。
以下のページを参考にして、WinSCPを用意します。
WinSCPの設定
前回の内容を参考にして、WinSCPでSSHの接続情報を入力します。
=VagrantでUbuntuを起動して、コマンドプロンプトで「vagrant ssh-config」を入力したら、UbuntuのSSH接続の設定情報が確認できます。
C:\Users\user\vagrant\ubuntu64_18>vagrant ssh-config
Host default
HostName 127.0.0.1
User vagrant
Port 2222
UserKnownHostsFile /dev/null
StrictHostKeyChecking no
PasswordAuthentication no
IdentityFile C:/Users/user/vagrant/ubuntu64_18/.vagrant/machines/default/virtualbox/private_key
IdentitiesOnly yes
LogLevel FATAL
次に、画面右側にある「設定」ボタンをクリックします。
「高度なサイトの設定」という画面が表示されます。
画面左側のメニューで、「SSH」の「認証」をクリックします。
「秘密鍵」欄の右側の[…]ボタンをクリックします。
「C:\Users\user\vagrant\ubuntu64_18\.vagrant\machines\default\virtualbox」フォルダを指定して開きます。
「秘密鍵の選択」画面が表示されたら、右下のファイルの種類欄を「すべてのファイル(*.*)」に変更します。
「private_key」を選択して、[開く]ボタンをクリックします。
すると、以下のようなメッセージが出てきました。
「秘密鍵ファイル
'C:\~\private_key'はOpenSSH SSH-2形式の鍵を含んでいます。WinSCPはPuTTY形式のみ対応しています。
PuTTYgenを使用して秘密鍵ファイルを変換することが出来ます。」
と説明されていたので、「PuTTYgen」というツールを使って、ファイル形式を変換してみます。
(参考)WinSCPとPuTTYgenを一緒に使っている場合(フォルダに同梱?)は、そのまま変換できるようです。
ここでは別途、PuTTYgenを用意して、手動で変換してみます。(本日のハイライト)
PuTTYgenで鍵ファイルの形式を変換
(参考)
以下のページからPuTTYgenをダウンロードします。
https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
Windows10の64ビット版を使ってる場合は「64-bit: puttygen.exe」をクリックします。
ダウンロードしたputtygen.exeを起動します。
「PuTTY Key Generator」という画面が表示されたら、「Load」ボタンをクリックします。
「Load private key」という画面が表示されたら、右下のファイルの種類を「All Files (*.*)」に変更します。
「C:/Users/user/vagrant/ubuntu64_18/.vagrant/machines/default/virtualbox/private_key」を選択して、[開く]ボタンをクリックします。
「PuTTYgen Notice」という画面が表示されて、鍵がインポートできたというメッセージが表示されたら、[OK]ボタンをクリックします。
「PuTTY Key Generator」画面で[Save private key]ボタンをクリックします。
「PuTTYgen Warning」という画面が表示されて、パスワードが設定されてないけど大丈夫か?というメッセージが出てきたら、[はい]ボタンをクリックします。
(※Vagrantで生成されたデフォルトの秘密鍵は、パスワードが設定されていないのでOK)
ファイル形式を変換して、新たに保存する秘密鍵のファイルは、
- ファイル名: putty_private_key
- 拡張子: ppk
として保存します。(名前は適当でOK)
新たに生成された「putty_private_key.ppk」というファイルが、WinSCPで使えるPuTTY形式の秘密鍵ファイルになります。
これを使って、もう一度WinSCPの設定をやってみましょう。
WinSCPでPuTTY形式の秘密鍵を設定
上記のWinSCPの設定作業で、秘密鍵を選択するところまで進めます。
SSHで使う秘密鍵として、今作った「putty_private_key.ppk」を選択します。
[開く]ボタンをクリックします。
WinSCPの「高度なサイトの設定」画面に戻ったら、[OK]ボタンをクリックします。
WinSCPの最初の画面(ログイン画面)に戻ったら、接続情報を保存する場合は[保存]ボタンをクリックします。
「セッションの保存名」画面で、保存名などを入力して[OK]ボタンをクリックします。
WinSCPでログイン
WinSCPの最初の画面に戻ったら、[ログイン]ボタンをクリックします。
WinSCPでUbuntuにログインできたら、以下のような画面が出てきます。
これで、仮想マシン上のLinuxに、Windows側からファイルの転送ができるようになりました。
まとめ
これで仮想マシン上のLinuxに、Windows側からファイル転送ができるようになりました。
Webプログラミングが面白いほどわかる本 環境構築からWebサービスの作成まで、はじめからていねいに (N高校のプログラミング教育)
- 作者: 吉村総一郎
- 出版社/メーカー: KADOKAWA
- 発売日: 2018/06/22
- メディア: 単行本
- この商品を含むブログを見る