Vagrant用の設定
boxを作成する場合、box用ユーザーを作成したり、そのユーザーにbox用sshキーを用意したりなど、box専用の設定が必要になります。
-
ユーザー・グループ作成
-
sudoの設定
Vagrantでは、グループvagrantとユーザーvagrantが必要なので作成します。
グループ作成
# groupadd vagrant
ユーザー作成
ユーザーvagrantを作成します。グループはvagrantを指定します。
# useradd -g vagrant vagrant
作成したユーザーvagrantのパスワードをvagrantにします。
# passwd vagrant
ユーザーvagrantはパスワードなしでsudoを実行できる必要があります。 また、requirettyを必ず無効にする必要があるので、有効の場合は、コメントアウトして無効化します。 これは、VagrantがコマンドをTTYなしで実行するためで、requirettyが有効になっているとコマンドが失敗するからです。
# visudo ... #Defaults requiretty ← コメントアウトして無効化 ... vagrant ALL=(ALL) NOPASSWD: ALL ← 追加
SSHの設定
作成したユーザーvagrantのSSHを設定します。 最初にホームディレクトリに.sshディレクトリを作成し、アクセス権限を700で設定します。
# su - vagrant $ pwd /home/vagrant $ mkdir .ssh $ chmod 700 .ssh
githubからvagrantのpublic key(insecure private key) を取得し、 .sshディレクトリに、authrozied_kyesという名前で保存します。
CentOS 6.6の最小構成だと、wgetがインストールされていないので、curlで取得します。
$ cd /home/vagrant/.ssh $ curl -k -L -o authorized_keys https://raw.githubusercontent.com/mitchellh/vagrant/master/keys/vagrant.pub取得したキーのアクセス権は600に設定します。
$ chmod 600 authorized_keys