最近の更新 | |
---|---|
監視カメラ
| 2024/01/14 |
加湿器
| 2023/12/14 |
pdfで数字だけ印刷されない現象に遭遇
| 2023/10/25 |
grep日本語検索
| 2023/10/12 |
キーボード
| 2023/08/27 |
知のポートフォリオ
| 2023/07/29 |
ドングルの死
| 2023/06/04 |
ヒートポンプ
| 2023/05/31 |
ドメイン運用
| 2023/05/21 |
太陽光発電_奮闘記
| 2023/04/09 |
AWSコスト削減
| 2022/12/04 |
ClamAV
| 2022/08/31 |
github
| 2022/08/08 |
社内LAN敷設
| 2022/05/03 |
Let's Encrypt
| 2022/05/02 |
Nuroに切り替えてNetwork-Printerにつながらなくなりました
| 2022/05/01 |
突然LANがつながらなくなりました
| 2022/04/30 |
藤井厳喜セミナー
| 2022/02/09 |
資金調達
| 2022/02/09 |
車と税金
| 2022/02/09 |
Ubuntu 12.04 のサポート終了に伴い OS をアップグレード しようとしたのが悲劇の始まりだったw
Shuttle XS36V5 (Celeron N3050): | ¥18,981 |
メモリ 8G(SODIMM DDR3L-1600): | ¥ 6,769 |
HDD TOSHIBA 2.5" SATA 9.5mm-height 1TB(MQ01ABD100): | ¥ 5,980 |
当面はこれで十分だろう:
Ubuntu server 12.04 LTS 32bit を入れる。
#XKBLAYOUT="jp"XKBMODEL="pc105"
XKBLAYOUT="us"
$ sudo dpkg-reconfigure console-setup
auto eth0 iface eth0 inet dhcp
$ sudo /etc/init.d/networking restart
/etc/apt/sources.list は既に jp が指定されていた。$ suto apt-get update $ suto apt-get upgrade
lv
PermitRootLogin: | no |
PasswordAuthentication: | no |
グローバルIP からのアクセスを、サーバに転送するよう、ルータの設定を行う。 サーバはローカルの固定IP 192.168.1.200 とする。
IP | port |
---|---|
192.168.1.200 | 22(ssh) |
192.168.1.200 | 80(http) |
192.168.1.200 | 443(https) |
エントリ番号: | 1 |
優先順位: | 1 |
接続インタフェース名: | セッション2(i-revo) |
宛先IPアドレス: | 192.168.1.200 |
変換対象IPアドレス: | 自分のWAN側IPアドレス |
変換対象プロトコル: | TCPとUDP両方 |
変換対象ポート: | 80-80 |
エントリ番号: | 2 |
優先順位: | 2 |
接続インタフェース名: | セッション2(i-revo) |
宛先IPアドレス: | 192.168.1.200 |
変換対象IPアドレス: | 自分のWAN側IPアドレス |
変換対象プロトコル: | TCPとUDP両方 |
変換対象ポート: | 443-443 |
エントリ番号: | 3 |
優先順位: | 3 |
接続インタフェース名: | セッション2(i-revo) |
宛先IPアドレス: | 192.168.1.200 |
変換対象IPアドレス: | 自分のWAN側IPアドレス |
変換対象プロトコル: | TCPとUDP両方 |
変換対象ポート: | 22-22 |
エントリ番号: | 4 |
優先順位: | 4 |
接続インタフェース名: | メインセッション(ISP1) |
宛先IPアドレス: | 192.168.1.200 |
変換対象IPアドレス: | 自分のWAN側IPアドレス |
変換対象プロトコル: | TCPとUDP両方 |
変換対象ポート: | 22-22 |
エントリ番号: | 5 |
優先順位: | 5 |
接続インタフェース名: | セッション2(i-revo) |
宛先IPアドレス: | 192.168.1.200 |
変換対象IPアドレス: | 自分のWAN側IPアドレス |
変換対象プロトコル: | TCP |
変換対象ポート: | 25(smtp) |
(2012/07/12) 突然 LAN内でネットが使えなくなる現象がだいたい1回/日の割合で4回発生した。 時間は不定期。サーバにもルータにもログは残っていない。
マルチセッションにしてからおかしくなったと思う。 取り急ぎ、固定IP側のセッション1つにして運用してみる。
$ sudo a2enmod include $ sudo service apache2 restart
#-------------------------------------------------------- # juli setup #--------------------------------------------------------Options +Includes -Indexes -FollowSymLinks DirectoryIndex index.html index.shtml
やはり固定IPが良いと判断した。理由は、
注: 'dns-nameservers' のエントリーがないと、reboot時に /etc/resolv.conf が空になり、dns が引けなくなっていた。auto eth0 iface eth0 inet static address 192.168.1.200 netmask 255.255.255.0 gateway 192.168.1.1 dns-nameservers 192.168.1.1
(この節古い) /etc/resolv.conf が動的 (/var/resolvconf/resolv.conf への symlink)なので 変更。
$ sudo apt-get remove isc-dhcp-client
LAN内部から http://グローバルIP にアクセスすると、なぜかルータ管理画面が 表示される。 http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1350231438 によると、ルータの機種によるようだ。 今使用しているのは PR-S300SE (住友電工製?)
LAN内に DNS を立て、LAN内ではサーバはローカルIP 192.168.1.200 となるようにすることで対応してみる。
$ sudo apt-get install bind9
zone "wellstech.jp" { type master; file "/etc/bind/wellstech.jp.zone"; }; zone "168.192.in-addr.arpa" { type master; file "/etc/bind/wellstech.jp.rev"; };
$TTL 604800 @ IN SOA wellstech.jp. root.wellstech.jp. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS wellstech.jp. @ IN A 192.168.1.200
$TTL 604800 @ IN SOA wellstech.jp. root.wellstech.jp. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS wellstech.jp. 200 IN PTR wellstech.jp.
$ cd /etc/bind/ $ sudo named-checkzone wellstech.jp wellstech.jp.zone zone wellstech.jp/IN: loaded serial 2 OK
これで /etc/init.d/networking restart すると、/etc/resolv.conf は意図したようになった:# Dynamic resolv.conf(5) file for glibc resolver(3) generated by # resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.0.1
nameserver 127.0.0.1 nameserver 192.168.1.1
$ nslookup wellstech.jp : Name: wellstech.jp Address: 192.168.1.200
$ nslookup www.yahoo.co.jp :
$ nslookup wellstech.jp : Name: wellstech.jp Address: 124.41.84.125
参考:
/etc/hosts に書き込み、LAN 内・外に移動のたびに編集することで 逃げることにしていた時期もあった…。
外部から wget http://wellstech.jp してもアクセスできない。
1時間ほどハマっていたが、結論としては、 ルータ管理画面の 基本設定 > 接続先設定 > 接続ルール設定 > セッション2(i-revo用)に、下記をセットすることでアクセスできるようになった:
接続先選択: | セッション2(i-revo) |
宛先ドメイン名: | (空欄) |
宛先IPアドレス: | * |
送信元IPアドレス: | * |
プロトコル: | * |
つまり、管理画面の説明にもあるように、「条件」(「接続ルール設定」 を指すようだ)で任意のIPからのアクセスに対してセッション2(i-revo)を 優先するようにしたわけだ。
なお、宛先IPアドレスを 192.168.1.200(LAN内サーバIPアドレス)や 124.41.84.125(i-revoで取得した固定IP)にするとアクセスできない(why?)。
(試行錯誤中のメモ。今となっては不要。)
外部から wget http://wellstech.jp すると、ルータ管理画面の 情報 > セキュリティログ に、以下のように破棄されている:
2012/07/04 00:13:12 124.255.167.***/36390 192.168.1.200/80 TCP 廃棄[SPI]
124.255.167.*** は送信元のIP
mailutils をインストール。mysql-common に依存しているのが気に入らない。
ノートPCで無停電サーバ運用、というのは甘いことが分かった ( http://mzex.wordpress.com/2008/05/16/%E3%83%8E%E3%83%BC%E3%83%88pc%E3%82%92%E3%82%B5%E3%83%BC%E3%83%90%E3%81%AB%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%8C%E3%82%88%E3%81%8F%E3%81%AA%E3%81%84%E7%90%86%E7%94%B1/ ) やや辛口^_^;
とは言え、UPS(というか鉛バッテリ)のメリットが分かったので、 ノート + 予備のリチウムバッテリ、という案はやめて UPS を導入することにしたのだった。
ざっと調べて、以下にしてみた:
Ubuntu用バイナリパッケージは提供されてないようだが、 ソースが提供されているため、再コンパイルすれば良い、と思っていたが これが甘かった。まず、コンパイルが通らない。
逆に、バイナリがそのままインストールできるのでそちらを使用する:
$ umask 002 $ cd Release $ sudo bash ./install.sh : (ライセンス条項が表示) : Do you agree this license? [ y/n ] y $ sudo /usr/lib/ssd/master/config.sh
(HOSTNAME, MY@MAIL.ADDRESS は適宜変える)#!/bin/sh mail -s 'HOSTNAME UPS down' MY@MAIL.ADDRESS <<EOM HOSTNAME UPS down now... EOM sleep 5 /sbin/shutdown -h 0
設定後、自動的にエージェントは起動しているようだ。 コマンドでのエージェントの起動/停止は以下:
$ sudo /usr/lib/ssd/master/AgentManager
Jul 6 07:33:40 wtech SimpleShutdown[1606]: AC line failure! Jul 6 07:33:45 wtech SimpleShutdown[1606]: AC line failure recover.
Server: ----------------> UPS: -- (瞬断) ------> _n ( l _、_ \ \ ( <_,` ) ヽ___ ̄ ̄ ) グッジョブ!! / /
Server: -----(shutdown)-> -ON-----------------------> サーバ停止 ↑ ↑ UPS: -->(停電)--> -ON-----------------------> UPS停止 <---- シャットダウンに必要な時間 ---->
/usr/lib/ssd/master/AgentManager: | コマンドラインでの daemon の管理 |
/usr/lib/ssd/master/Shutdown.cfg: | 設定情報の格納場所 |
http://bibo-log.blog.so-net.ne.jp/2012-03-13 によると、 Ubuntu でも Network UPS Tools を使うことで監視などできるようだ。
(この節、試行錯誤中の旧い情報)
取説とソースは、検索すればオムロンのサイトがヒットする: http://www.omron.co.jp/ese/ups/download/sss/sss.htm
2012/07/04 時点では v2.20 Linux版をソースからコンパイルして入れる。
ソースからコンパイルしようとしたが、以下のエラーが:
/usr/bin/ld: cannot find -lusb
どうやら、usb 通信部分のようだが、ソースには含まれてないようで…。
いや、
$ sudo apt-get install libusb-dev
…でコンパイル通ったが、だめ。 コンパイルしたものを入れても以下となるだけ:
$ tail -f /var/log/kern.log Jul 5 00:04:15 wtech kernel: [ 7731.320390] ssdDaemon[3086]: segfault at 28aa010 ip 028aa010 sp bfb0268c error 14 in ssdDaemon[8048000+9000]