Raspberry Pi 2 [Raspbian Jessie] をWi-Fi接続、IP固定にしてhost名でssh接続可能にする

[Raspberry Pi 2にRaspbian Jessieをセットアップし、自分のユーザーにログイン](http://qiita.com/naoto0n2/items/a03df7762536c20c0296) の続きです
基本的には自分用のメモになりますので、ざっくりになります

# やりたいこと
- Raspberry PiをWi-Fiでルーターに接続
- IPを固定化
- ssh接続をhost名で行う

# 前提
項目 | 内容
--- | ---
本体 | Raspberry Pi 2 Model B
Raspbian OS | Raspbian Jessie<br><img width="404" alt="スクリーンショット 0027-12-31 0.30.48.png" src="https://qiita-image-store.s3.amazonaws.com/0/69585/ffd646c9-dd8e-7597-60fd-d5744f9900f3.png">
PC | Macbook Pro Yosemite 10.10.5
環境 | おうち（ルーターへの接続数が少ない）

ちなみに今回Wi-Fi USB（無線LAN子機）は[WLI-UC-GNM](http://buffalo.jp/product/wireless-lan/client/wli-uc-gnm/)を使用しました

# 事前準備
- Wi-Fi USBを挿入
- LANケーブルを接続

# vimのインストール
viを使うと「vi互換モード」というモードになっていて操作に戸惑ったので、vimをインストールしておきます

## apt-get 更新
ログがドバっと出てきます

```bash:naoto0n2@raspberrypi
$ sudo apt-get update
[sudo] password for naoto0n2: 
取得:1 http://archive.raspberrypi.org jessie InRelease [13.3 kB]                                                       
取得:2 http://mirrordirector.raspbian.org jessie InRelease [15.0 kB]                                                   
取得:3 http://archive.raspberrypi.org jessie/main armhf Packages [101 kB]
...
略
...
9,208 kB を 24秒 で取得しました (382 kB/s)
パッケージリストを読み込んでいます... 完了
```
完了

## vim インストール
vimのインストールは容量確認だけされるので`Y`と入力してEnter

```bash:naoto0n2@raspberrypi
$ sudo apt-get install vim
パッケージリストを読み込んでいます... 完了
...
略
...
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 25 個。
5,857 kB のアーカイブを取得する必要があります。
この操作後に追加で 28.2 MB のディスク容量が消費されます。
続行しますか? [Y/n] Y
取得:1 http://mirrordirector.raspbian.org/raspbian/ jessie/main vim-runtime all 2:7.4.488-7 [5,047 kB]
取得:2 http://mirrordirector.raspbian.org/raspbian/ jessie/main vim armhf 2:7.4.488-7 [809 kB]
5,857 kB を 3秒 で取得しました (1,780 kB/s)
以前に未選択のパッケージ vim-runtime を選択しています。
(データベースを読み込んでいます ... 現在 123536 個のファイルとディレクトリがインストールされています。)
...
略
...
```

# Wi-Fi USBからルーターに接続

## 事前に接続しておいたUSBが認識されているのか確認

```bash:naoto0n2@raspberrypi
$ lsusb
Bus 001 Device 004: ID 0411:01a2 BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-GNM Wireless LAN Adapter [Ralink RT8070]
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
```
WLI-UC-GNMがあるのでOK

## ESSIDとパスフレーズを設定
ルーターへ接続するため、ESSIDとパスフレーズを設定しておきます

```bash:naoto0n2@raspberrypi
$ sudo wpa_passphrase 【ESSID】 【パスフレーズ】 | sudo tee -a /etc/wpa_supplicant/wpa_supplicant.conf 
network={
	ssid="【ESSID】"
	#psk="【元のパスワード】"
	psk=【暗号化されたパスワード】
}
```

元のパスワードは不要なので削除し、暗号化方式を適宜指定します（proto, key_mgmt）

```bash:naoto0n2@raspberrypi
naoto0n2@raspberrypi:~ $ sudo vi /etc/wpa_supplicant/wpa_supplicant.conf 
```
```bash:/etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
        ssid="【ESSID】"
        proto=WPA2
        key_mgmt=WPA-PSK
        psk=【暗号化されたパスワード】
}
```
といった感じに変更

## ルーターへの接続を確認
Raspberry Piをシャットダウン → LANケーブルを外す → 再度ssh接続
以下のコマンドでルーターのESSIDが表示されていればOK

```bash:naoto0n2@raspberrypi
$ iwconfig wlan0
wlan0     IEEE 802.11bgn  ESSID:"【ESSID】"  
…
…
```

以上でRaspberry PiからルーターへのWi-Fi接続が完了
以降LANケーブルが無くても自動的にWi-Fi経由でネットワークに接続してくれるようになります

# host名でssh接続
## host名変更
毎回IPアドレスを入力してssh接続するのも面倒なのでhost名を設定します
defaultでは`raspberrypi`ですが、長いので今回は`raspi`にします

```bash:naoto0n2@raspberrypi
$ sudo vim /etc/hostname
```

```bash:/etc/hostname
raspi
```

hostsの設定も変更

```naoto0n2@raspberrypi
$ sudo vim /etc/hosts
```

```bash:/etc/hosts
127.0.0.1       localhost
::1             localhost ip6-localhost ip6-loopback
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters

127.0.1.1       raspi
```

ここで `sudo: ホスト raspberrypi の名前解決ができません` と出ても無視して再起動

## 接続
変更が完了したら`ssh 【ユーザー名】@【ホスト名】.local`で接続します

```bash:terminal
$ ssh naoto0n2@raspi.local
naoto0n2@raspi.local's password: 

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Dec 31 03:22:11 2015 from 192.168.0.8
```
接続OK！

# IP固定化

## IPの選び方
固定IPはDHCP自動割り当てIPの範囲外を適当に選びます
ルーターの設定画面（今回は`192.168.0.1`）を見ると`192.168.0.2`〜`192.168.0.32`が範囲内となっていたので、`192.168.0.100`としました

## 固定化
Jessieでは`dhcpcd.conf`というファイルを変更します

```bash:naoto0n2@raspi
$ sudo vi /etc/dhcpcd.conf 
```

以下を追記

```bash:/etc/dhcpcd.conf
...
略
...
interface wlan0
inform 192.168.0.100
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
```

# これで
完了！