Proxmox VEをお遊び環境のNUCに入れたので初期設定をする

# [概要]
下記の記事でProxmoxをNUCにインストールしたので、初期設定を行う。

[Proxmox VEをNUCに入れてお遊び環境を構築する](http://qiita.com/ghfdjk/items/1840ca3934be85c194f9)

# [事前準備]
書きを参考にProxmoxがインストールされていること

* [Proxmox VEをNUCに入れてお遊び環境を構築する](http://qiita.com/ghfdjk/items/1840ca3934be85c194f9)


# [作業内容]
## 一般ユーザ作成
作業するユーザを作成

```bash
### ディレクトリ作成
root@proxmox:~# mkdir /home/ghfdjk

root@proxmox:~# useradd ghfdjk -d /home/ghfdjk
```

### 作成したユーザのパスワードを設定
```bash
root@proxmox:~# passwd ghfdjk
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
```

## sshdの設定
### sudo インストール
```bash
$ sudo apt-get update
$ sudo apt-get -y install sudo
```

```bash
root@proxmox:~# visudo
```

```visudo
# User privilege specification
root    ALL=(ALL:ALL) ALL
ghfdjk    ALL=(ALL:ALL) ALL
```

### 一旦ログアウトして、作成したユーザで確認
`ssh-copy-id`コマンドで鍵登録を実施する。
Linuxだったら多分大体このコマンドは入ってます。

```bash
$ ssh-copy-id ghfdjk@192.168.172.101
```

[Tips]
鍵を作成していない場合は、下記を実行して空Enterで応答する

```bash
$ ssh-keygen -t rsa -b 4096 
```

Macで`ssh-copy-id`を使いたい場合は、GitHubに上がっているので、それを使う

```bash
$ curl https://raw.githubusercontent.com/beautifulcode/ssh-copy-id-for-OSX/master/ssh-copy-id.sh -o /usr/local/bin/ssh-copy-id
$ chmod +x /usr/local/bin/ssh-copy-id
```

### sshd_config のバックアップ
```bash
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_org
```

### rootでのログインを許可しない
```bash
$ sudo sed -i -e "s/PermitRootLogin yes/PermitRootLogin no/g" /etc/ssh/sshd_config
```

### パスワード認証を禁止
```bash
$ sudo sed -i -e "s/#PasswordAuthentication yes/PasswordAuthentication no/g" /etc/ssh/sshd_config
```

### sshdの設定反映
```bash
$ sudo /etc/init.d/ssh restart
Restarting ssh (via systemctl): ssh.service.
```

__一旦ログアウトして、先程作ったユーザでログインしていく__

## 日本語化対応
### NTPサーバの変更
```bash
$ sudo vi /etc/systemd/timesyncd.conf
```

`ntp.nict.jp`に変更する

```/etc/systemd/timesyncd.conf
[Time]
Servers=ntp.nict.jp
```

### NTP設定の反映
```bash
$ sudo systemctl restart systemd-timesyncd.service
```

### locale変更
```bash
$ sudo sed -i -r 's/^#? *(ja_JP\.UTF-8 UTF-8)$/\1/' /etc/locale.gen
```

### locale反映
```bash
$ sudo locale-gen
Generating locales (this might take a while)...
  en_US.UTF-8... done
  ja_JP.UTF-8... done
Generation complete.
```

```
$ sudo update-locale LANG=ja_JP.UTF-8
```

## Proxmox VE リポジトリ変更
ライセンスが必要な有料のリポジトリを無効化してフリーで使えるリポジトリを追加

```bash
$ sudo sed -i -r 's!^(deb https://enterprise\.proxmox\.com/debian jessie pve-enterprise)$!#\1!' /etc/apt/sources.list.d/pve-enterprise.list
```

リポジトリの追加

```bash
$ sudo vi /etc/apt/sources.list
```

```/etc/apt/sources.list
deb http://ftp.debian.org/debian jessie main contrib

# PVE pve-no-subscription repository provided by proxmox.com,
# NOT recommended for production use
deb http://download.proxmox.com/debian jessie pve-no-subscription

# security updates
deb http://security.debian.org jessie/updates main contrib
```

## パッケージ更新
```bash
$ sudo apt-get update
### 途中 `q` を押せと出るので `q`を押す
$ sudo apt-get upgrade
$ apt-get dist-upgrade
```

## メール送信先設定(Gmail)
### 必要なミドルウェアをインストール
```bash
$ sudo apt-get install -y postfix libsasl2-modules sasl2-bin
```

### gmail用設定ファイルを作成 
```bash
/etc/postfix/gmail
```

```/etc/postfix/gmail
[smtp.gmail.com]:587 <Gmailアドレス>:<パスワード>
```

#### gmailファイルの権限を変更
```bash
$ sudo chmod 600 /etc/postfix/gmail
```

#### PostfixのDBファイル作成
```bash
$ sudo postmap /etc/postfix/gmail
```

### Postfix設定
```bash
$ sudo vi /etc/postfix/main.cf
```

下記を追記する。

```/etc/postfix/main.cf
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/gmail
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
smtp_use_tls = yes
```

sed で設定ファイルを修正する。

```bash
sudo sed "s/^relayhost \=/relayhost = [smtp.gmail.com]:587/g" /etc/postfix/main.cf | grep relayhost
```

### Postfixの設定反映
```bash
$ sudo postfix reload
```

### テストで送信してみる
```bash
$ sudo date | mail -s test user@gmail.com
```

# [事後確認・作業]
諸々アップデートを掛けているので、`rboot`して問題なく起動する確認しておく。