Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

Vagrant | vagrant検証用に仮想環境を2環境作成して公開鍵認証によるSSH接続確認を行う

概要

vagrant検証用に仮想環境を2環境作成してSSH接続確認を行う

詳細

仕様

ホストはWindows7(作業はcygwinを利用)
ゲストは双方Ubuntu1204

それぞれclient,serverとする。
ipはclientが192.168.33.10
ipはserverが192.168.33.11
どちらの環境もUbuntu1204のみインストール

設定
# クライアント仮想環境作成
mkdir client
vagrant init
vi Vagrantfile # ipとboxを設定(設定内容は後述)
vagrant up
vagrant ssh
cd ~/.ssh
ssh-keygen => 鍵の作成。id_rsa.pubをserver側に登録する
exit

# サーバー仮想環境作成
cd ../
mkdir server
cd ../server
vagrant init
vi Vagrantfile # ipとboxを設定(設定内容は後述)
vagrant up
vagrant ssh
cd /etc/ssh
sudo vi sshd_config # PasswordAuthentication noを追記
sudo service ssh reload
# 鍵の登録に続く

鍵の登録
・clientのid_rsa.pubの内容をサーバーの~/.ssh/authorized_keysに追記

sudo echo '鍵の内容' >> authorized_keys

認証確認
・clientからserverにアクセス

cd ../client
vagrant ssh
ssh vagrant@192.168.33.11

client Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu-12.04-x64"
  config.vm.network :private_network, ip: "192.168.33.10"
end

server Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu-12.04-x64"
  config.vm.network :private_network, ip: "192.168.33.11"
end