ぱっそ あ ぱっそ

個人的なメモをだらだらと。無保証。記事は随時書き直しています。

【忘備録】 DS57UでSophos XG Firewall

先日のエントリの通り、DS57Uが我が家に導入されまして、ESXi5.5を使った仮想サーバが運用されています。

これでいままでRaspberry Piで担っていた家庭内サーバが普通のサーバの速度で動き出します。やっぱりRasberry Piだと(コンソールはいいとしても)速度でひっかかるところはあるので。
Bluetoothテザリングは速度の不満はなかったのですが、二台動かす必要はないのでこちらに移行します。
 
おおむね同じ内容で、特に引っ掛かるところはなかかったのですが、いくつかメモだけ
  • EXSi5.5にdebian8はそのまま入らなかった(途中で止まる)インストールオプションで基本コンポーネット+SSHサーバのみで構成すれはOK。ただしこれだとコンポーネントが足りないのでsudoとpython-dbusをapt-getでインストール。
  • XSi5.5でBluetoothはすんなり認識しました。
こんなことかな。。。

【備忘録】 Sophos XG Firewall インストール。または http://172.16.16.16:4444 対策

internet.watch.impress.co.jp

これを入れるためにDS57Uを選んだところもあり、ESXi上にインストール

ところが、管理用のページがhttp://172.16.16.16:4444 固定のようで、家の環境(192.168.11.yy)からアクセスするのが手間。

一台だけIPを変えてもいいけど、ここはVyOSを導入して、いったんNATをかます形でクリア

set nat source rule 1 source address 192.168.11.0/24
set nat source rule 1 outbound-interface eth1
set nat source rule 1 translation address 172.16.16.aaa

set nat destination rule 11 destination address 192.168.11.bbb
set nat destination rule 11 destination port 4444
set nat destination rule 11 inbound-interface eth0
set nat destination rule 11 protocol tcp
set nat destination rule 11 translation address 172.16.16.16

http://192.168.11.bbb:4444でうまくNATされてSophos XG Firewallの管理画面まで到着しました。

【備忘録】 DS57Uで仮想サーバ

そのうちまとめます。

www.shuttle-japan.jp

DS57Uで仮想サーバを構築した時のメモ

Microsoft Hyper-V Server 2012

DS57UのサポートページからNICドライバをダウンロードして、infを若干書き直せば2NICとも認識可能。ただ、管理ツール(RSAT)がWin10Homeに対応していないため途中で断念

vSphere Hypervisor

ESXi-Customizer-PSを使うことで2NICとも認識可能。ただしESXi 6.0はインストール自体がNG(ドライブが見えていない?) ESXi 5.5ならOK

.\ESXi-Customizer-PS-v2.4.ps1 -v55 -vft -load sata-xahci,net-igb

でisoファイルを作成できた。

Raspberry Piをbluetooth使用ルータとして活用する (まとめ)

「Raspberry Piをbluetooth使用ルータとして活用する」はStep1から7で完成です。以下にまとめてみました。

  • 概要 なぜこんなことを考えたかの前提です。
  • Step 1 まずはRaspberry PiのIPアドレスを固定します。
  • Step 2 bluetooth接続の前段階。ペアリング設定を行います。
  • Step 3 ペアリングを行ったandroid端末とPANを確立し、ネットワーク通信ができるようにします。
  • Step 4 インターネットへの通信はPAN接続したandroid端末を使うよう、metricの設定を行います。
  • Step 5 LAN側の機器からの通信をインターネット側(PAN接続側)へ伝えるよう、ip forwordとiptablesの設定を行います。
  • Step 6 テザリングの終了方法です。
  • Step 7 LAN側の機器の設定変更です。

Raspberry Piをbluetooth使用ルータとして活用する (Step7 周辺整備)

周辺整備

いままでの設定でRaspberry Piのbluetooth使用ルータの構築が完了しました。

後はLAN側の機器の設定が必要です。Raspberry Piには直接関係ないので箇条書きです。

まず最初はLAN側の機器がADSLより前にRaspberry Piに通信する必要があります。ADSL親機やwifi親機がDHCPサーバとして稼働しているはずですから、DHCPのオプションで

とします。これですべての設定が完了しました。

便利ツール

今までので設定自体はおしまいですが、PANの確立、切断をいちいちキーボードで打ち込むのは面倒です。 ターミナルソフトのマクロ機能を使えばダブルクリック一つで操作可能ですので使っているソフトに合わせ作ってください。 (terateamでは簡単に作成できました)

残った課題

今回は必要最低限の部分としましたが、

  • DHCPサーバをRaspberry Piで立ち上げる
  • DNSサーバをRaspberry Piで立ち上げる

も今後の課題としたいと思います

Raspberry Piをbluetooth使用ルータとして活用する (Step6 bluetooth PANの切断)

bluetooth PANの切断

いままでの設定でRaspberry Piのbluetooth使用ルータとして働いてくれるようになりました。ただ、緊急用としての利用ですから、bluetooth PANを切断する部分までをちゃんと行います。(緊急用としてでなくて、ずっと使うのであれば、rebootで切断すれば問題ありません。

pi@raspberrypi:~ $ sudo ifdown bnep0

bluetoothインタフェースが無くなって、通信も元のADSL経由に戻りますが、これだとandroidとのPAN接続は残ったままになります。切断するには。bluetoothctlを使って

pi@raspberrypi:~ $ sudo bluetoothctl
[NEW] Controller XX:XX:XX:XX:XX:XX raspberrypi [default]
[NEW] Device YY:YY:YY:YY:YY:YY ZTE Blade Vec 4G
[bluetooth]# disconnect YY:YY:YY:YY:YY:YY

で切断完了です。

さて、これでテザリング開始から切断までをSTEP1-6で行うことが出来ました。残りはraspberry pi以外のお話しです。

Raspberry Piをbluetooth使用ルータとして活用する (Step5 iptables+ipforword)

iptables+ipforword

いままでの設定でRaspberry Piのインターネットとの通信はbluetoothを使うようになりました。いよいよ次は有線LAN側に接続されたRaspberry Pi以外の機器からの通信をRaspberry Piを経由してbluetooth側に流してあげます。

参考

俺でも解るIPTABLESも参考になりました。

iptablesの設定を保存(再起動しても初期化されない)するため、iptables-persistentパッケージを導入します。

    pi@raspberrypi:~ $ sudo apt-get install iptables-persistent

iptablesを設定します。LAN側(192.168.11.0/24)からのパケットにはNAT(IPマスカレード)してあげます。最後の行で設定ファイルを追記して再起動してもルールが有効になるようにします。

    pi@raspberrypi:~ $ sudo iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -j MASQUERADE
    pi@raspberrypi:~ $ sudo iptables -I FORWARD -j ACCEPT
    pi@raspberrypi:~ $ sudo iptables-save | sudo tee -a /etc/iptables/rules.v4

ipフォワーディングを有効にします。/etc/sysctl.confを編集。

    pi@raspberrypi:~ $ sudo nano /etc/sysctl.conf

net.ipv4.ip_forwardの設定がコメントアウトされているので

    #net.ipv4.ip_forward = 1

#をとって、有効化します。

設定が終わったら、再起動して設定を有効にします。