アパートの server

アパートに server を立てている。以前は、Mac OS X(Tiger から Snow Leopard まで)を server として使っていた。しかし、OS X は細かいチューニングがしにくいこと、Lion 以降の OS X が iOS 的になるかもしれない心配な状況にあることから、server として自分の手に最も合う Linux に置き換えることにした。(2012年1月)

distribution は、ここ数年仕事場でも利用している Ubuntu 10.04 server LTS を使うことにした。ハードウェアは、とりあえず ThinkPad X60s に SSD を載せたものが空いていたので、それを使うこととした。(ハードウェアはそのうち変更する可能性あり。)

HDD が少々怪しかったのでディスク入れ替えに伴い Ubuntu 12.04 server LTS に。(2013年4月)

アパート用の server にするにあたって必要としたのは

  • pppoe (ADSL接続)
  • apache2
  • ddclient
  • sshd
  • 無線 LAN アクセスポイント
    • hostapd
    • dhcpd
  • iptables による通信制御

といったところ。以下は設定のメモ。

なお、ハードウェアは X60s から Shuttle XS35-V2 にしている。(2012年1月〜)

pppoe

pppoeconf という設定ツールがある。簡単。

ddclient

dyndns を利用しているので、ddclient で dynamic dns の更新を行う。ddclient を apt-get でインストールする際に設定画面になるが、少々気になることがあったので /etc/ddclient.conf を手動で記入

daemon=60
pid=/var/run/ddclient.pid
ssl=yes
protocol=dyndns2
use=web
server=members.dyndns.org
login=nagato
password='xxxxxxxxx'
xxxxxx.dyndns.org

といった感じ。password を流すのでssl通信したいと思って調べてみると 3行目のように ssl=yes と書けば良いようだ。 また、上では daemon=60 と書いてあるが、Ubuntu では /etc/default/ddclient ファイル中で daemon_interval という変数で指定するようだ。(通常は 60秒でなく default の300秒間隔の更新でいいと思いますが。)

無線のアクセスポイント

アパートで他の note pc や Mac mini とかを使うために、この server を無線 LAN のアクセスポイントにしたいと考えた。もちろん WPA2 に対応していることは必須。(Mac OS X は WEP な AP にしかできない。)

アクセスポイントにするためには、wireless chip が master mode に対応していなければならない。 X60s に内蔵されている intel 3945 chip は対応していないらしいので、別の無線 chip が必要。そこで、Planex GW-USNano2 という USB 接続の小さな奴を利用。使用にあたっての手順は、以下を参照。

アクセスポイント設定のメモ

X60s → Shuttle XS35-V2

X60s で動かし続けるのも少々不安がある(fan の耐久性、常時 AC 接続によるバッテリーへの悪影響、SSD の耐久性など)ので、Atom のベアボーン(Shuttle XS35-V2)に切り替え。ハードディスクは ThinkPad 200s に元々入っていた 320GB の HDD を利用。メモリは 4GB に。(2012年1月18日〜)

Shuttle XS35-V2

wireless modules の問題?

GW-USNano2 で access point 化しているわけだが、最近固まることが増えてきたような(2012/11)... どうも wireless の kernel module で刺さっているような感じ。 kernel module の地雷かもしれないし、GW-USNano2 が長時間運用で草臥れているためかもしれない。(何せ GW-USNano2 は小さいデバイスなので耐久性はあまり...) 他の wireless chip を探すべきか。

12.04 LTS server

ハードディスク交換に伴い、12.04 LTS に入れ替える。(2013/04/15-)

apt-get install

build-essential kernel-package libssl-dev
lv unzip sysv-rc-conf emacs23-nox
ruby apache2 libapache2-mod-ruby
ddclient
imagemagick

ADSL 1.5M → 光ネクストマンションタイプ

ネットワークを切り替えた。(2013/04/23) が、思わぬところで手間取ってしまった。

ホームゲートウェイ RV-440MI の LAN ポートに接続して PPPoE 設定をしようとしたのだが、NIC デバイスを認識してくれない。原因は、この Shuttle XS35-V2 の NIC にあった。この NIC は JMicron JMC250 と呼ばれるものだが、省電力設定関連(?)で一部のギガビットスイッチと link できない(gigabit の autonegothiation に失敗する)という問題があるそうだ。

NIC 側で 100Mbps にしてしまっても良いらしいが、ホームゲートウェイ側で該当する LAN ポートを 100Mbps 全二重に設定することで解決。 結論だけ書くと短いけれど、しばらく悩んでしまった。

関係ないけど、ホームゲートウェイの設定にあたって、付属していた「超カンタン設定ガイド」を使わなくて良い。(このガイドに付属する CD-ROM 中の設定ツールは、Windows or Classic な Mac OS を必要とする。)

ホームゲートウェイは、LAN ポートに繋いだ PC(dhcp 接続できる)から Web ブラウザで 192.168.1.1 に接続することで各種の設定作業を行うことができる。結構いろいろな設定ができるみたいなので取扱説明書等を参考に。

apt-get install

ethtool
lm-sensors

cpu 温度等の sensor 情報を取得するには、あらかじめ

sensors-detect

しておく。その後、sensors コマンドで情報を取得できる。

ruby-1.9.1

apt-get install ruby1.9.1-full
update-alternatives --config ruby

Hardware Enablement Stack

apt-get install linux-generic-lts-trusty linux-image-generic-lts-trusty

無線のアクセスポイント(その2)

これまで使っていた GW-USNano2 は 2.4GHz のみ。2.4GHz 帯は noisy なので時折使用中に切れてしまうことがあった。それに加えて、上の操作で kernel version が上がり、GW-USNano2 で使っていた modules がうまく build できなくなった

そんなこんなで、あらかじめ準備していた Aterm WL300NU-AG (2.4GHz、5GHz デュアルバンド対応)を使って、AP の設定を行った。(2014.07) これは定評のある Atheros AR9170 chip なので、Ubuntu 12.04 の kernel 付属の carl9170 モジュールで難なく使える。hostapd も Ubuntu 標準のものを利用。あとは hostapd.conf 等を適当に直した程度で、非常に安定して使えている。:-)

do-release-upgrade

何時の頃からか上述のアクセスポイントが安定して動かなくなってきた。どうも何かのアップデートに伴い AR9170 をうまくハンドリングできなくなっているようだ。

いろいろ試していたのだけれど「これだ!」というものにたどり着けないので、最新の環境にすべく 12.04.5 から 14.04.1 LTS に上げる。(2014.10.10)

apache2 が 2.4 になったことで記述が変更になった設定ファイルを修正した程度で作業完了。

更新後、アクセスポイントの動作は安定したように見える。(しばらくは様子見)→ めちゃくちゃ安定した! おそらく、こことかこことかの 12.09 系で無線が不安定になったとかいう話と同根じゃないかと推察している。(12.04 系も当初はは安定していたので)

Shuttle XS35V2 → Shuttle XS36V5

決算セールでとても安くなっていた(4,8k)ときに購入。メモリーは 8GB に、ディスクは SanDisk の SSD 120GB にした。(2017/03/24〜)

Shuttle XS36V5

この際、ホームゲートウェイ RV-440MI の LAN ポート設定を 100Mbps 全二重から auto に戻す。

Last modified:2017/03/27 12:16:32
Keyword(s):[Linux] [Ubuntu]
References:[Linux]