Raspberry Piによる社内サーバの構築

初めまして。エンジニアのくぼっちです。

今までの経歴ではWEBのサーバやインフラを中心にフロントエンドも加えてやってきたのですが、今はiOSアプリのフロントエンドについて開発しながら勉強しています。

今後はフロントエンドの知識を強化していきたいと思っており、特にJavaScriptでモダンWEBアプリケーションを一度どこかで作りたいと思っています。


今回記事にしますのは社内サーバ用に行ったRaspberry Piの構築手順の覚書となります。

似たような記事は世の中溢れているとは思いますが、以前と比べて随分簡単になっていますしエンジニア以外でも興味を持って貰えると嬉しいです。

事の発端としては、オフィスが決まってしばらく社内インフラの整備を行っていく中で、社内サーバが欲しいという話になりました。

ファイルサーバとしては既にNASを用意していたのですが、やはりバッチ等プログラムの実行が可能な環境が必要でした。

しかし現状、会社の規模もまだ小さいので端末の管理等を行いたいわけでもなく、精々が定期的にバッチを実行したいだとか、NASとスキャナを中継したいだとか、その程度の要件です。

それくらいのためにウン万円のPCを用意するのもバカらしいということで、「ラズベリーパイでいいんじゃないですか?」と言った案が通ることになりました。


今回購入したのはケース付きのこちらの品。

http://www.amazon.co.jp/dp/B00WLHTPW4/ref=twister_B00WLHTPQA?_encoding=UTF8&psc=1

DSC_0008

ケースに掘られたラズベリーマークがキュートです。

お値段もその他必要なもの含めてトータル¥8,000行かないので、PCを一台そろえることを考えれば破格です。

OSを書きこむブートディスクはmicroSDです。

DSC_0009

OSにはRasberry Pi用にビルドされたDebianであるRaspbianがあるので、それをインストールします。

以前にRaspberry Piを設定したときには、OSのイメージファイルをダウンロードしてきて直接SDカードにブートディスクとして書き出すことをしていましたが、NOOBSという便利なインストーラがあるらしいので今回はそれを利用します。

下記のリンクからzipファイルをダウンロードします。

https://www.raspberrypi.org/downloads/noobs/

noobslite

windowsのエクスプローラ上で解答したzipの中身を丸ごとSDカードにコピーしてしまいます。

zip SD

そのままSDカードをラズベリーパイに差し替え、USBマウス、LANケーブル、HDMIケーブルを接続します。

DSC_0010DSC_0011

電源を入れます。電源となるmicroBのUSBを接続すれば勝手に立ち上がります。

DSC_0012

NOOBSが立ち上がりました。

DSC_0014

色々出てきますが、今回使用するRaspbianを選択してInstallを実行します。

DSC_0016 DSC_0017

インストールが開始されます。とても簡単です。

DSC_0018 DSC_0019

イメージファイルをSDカードに直接書き込んでいた時にはここまで持ってくるのも面倒なことも多かったですが、便利な時代になったものです。

しばらく待っていればRaspbianが立ち上がります。

DSC_0020 DSC_0021

この時点でもうPCとして十分に動作するので、とりあえずRaspberry Piを試したいという人はここまでで良いでしょう。


以降ではサーバとして運用するための設定を行います。

ここからはエンジニア以外には難しいかと思います。

一旦ログアウトしてマウスとディスプレイを取り外してしまいましょう。

DSC_0022 DSC_0023

デフォルトでSSHが立ち上がっているので、Tera Termでクライアントマシンから接続します。

ユーザ/パスワード=pi/raspbianでログインが可能です。

ここまで来れば後は大体ただのDebianです。

ssh

ユーザ pi はsodoerなので各種設定を進めていきます。

以降、”$”が頭につく行はコマンドを表します。

・とりあえずアップデートします。

$ sudo apt-get update

・vimがSmall版で色々と勝手が悪いのでインストールします。

$ sudo apt-get install vim

vi vi_huge

・piユーザのセキュリティがガバガバなので、SSHを鍵認証のみにします。

$ mkdir ~/.ssh

$cd ~/.ssh

$ ssh-keygen -t rsa -f raspberry

$ chmod 600 raspberry.pub

$ cat raspberry (内容をローカルのテキストファイルに保存する)

$ sudo vi /etc/ssh/sshd_config

・削除

PermitRootLogin without-password

・追記

AuthorizedKeysFile     %h/.ssh/raspberry.pub

PasswordAuthentication no

PermitRootLogin no

$ sudo service sshd restart


以上で一旦、サーバとして運用できるものになりました。

この後cronの設定や、プリンタドライバのインストール等を行うのですが、せっかくなのでDockerを導入してサービス毎に環境を切り分けたいと考えています。

その辺りのことはまたの機会にお伝えしたいと思います。

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です