IPoEとPPPoEでL2TP/IPsec VPN

IPoE環境では公開できるポートが限られている(参考)。

# show nat descriptor address 20000
NAT/IPマスカレード 動作タイプ : 2
参照NATディスクリプタ : 20000, 適用インタフェース : TUNNEL[1](1)
Masqueradeテーブル
    外側アドレス: map-e/XXX.XXX.XXX.XXX
    ポート範囲: 1280-1295, 2304-2319, 3328-3343, 4352-4367, 5376-5391, 6400-641
5, 7424-7439, 8448-8463, 9472-9487, 10496-10511, 11520-11535, 12544-12559, 1356
8-13583, 14592-14607, 15616-15631, 16640-16655, 17664-17679, 18688-18703, 19712
-19727, 20736-20751, 21760-21775, 22784-22799, 23808-23823, 24832-24847, 25856-
25871, 26880-26895, 27904-27919, 28928-28943, 29952-29967, 30976-30991, 32000-3
2015, 33024-33039, 34048-34063, 35072-35087, 36096-36111, 37120-37135, 38144-38
159, 39168-39183, 40192-40207, 41216-41231, 42240-42255, 43264-43279, 44288-443
03, 45312-45327, 46336-46351, 47360-47375, 48384-48399, 49408-49423, 50432-5044
7, 51456-51471, 52480-52495, 53504-53519, 54528-54543, 55552-55567, 56576-56591
, 57600-57615, 58624-58639, 59648-59663, 60672-60687, 61696-61711, 62720-62735,
 63744-63759, 64768-64783   67 セッション
プロトコル      内側アドレス                  宛先   マスカレード    種別
   TCP       192.168.X.11.22             *.*.*.*.*         12**       static
   TCP      192.168.X.2.8080             *.*.*.*.*         12**       static
  -*-    -*-    -*-    -*-    -*-    -*-    -*-    -*-    -*-    -*-    -*-

そこでVPN接続のためだけにPPPoEのセッションを張ることにする。かんたん設定でOK。

# show status pp 1
PP[01]:
説明: PPPoE
PPPoEセッションは接続されています
接続相手: BAS
通信時間: 2日11時間50分4秒
受信: 41781 パケット [3957142 オクテット]  負荷: 0.0%
送信: 27096 パケット [5798334 オクテット]  負荷: 0.0%
累積時間: 2日11時間50分4秒
PPPオプション
    LCP Local: Magic-Number MRU, Remote: CHAP Magic-Number MRU
    IPCP Local: IP-Address Primary-DNS(210.145.254.125) Secondary-DNS(221.113.1
39.245), Remote: IP-Address
    PP IP Address Local: YYY.YYY.YYY.YYY, Remote: ZZZ.ZZZ.ZZZ.ZZZ
    CCP: None

L2TP/IPsecについてかんたん設定でOK。認証に何を使うのか(PAP/CHAP/MS-CHAP)覚えておくこと。この設定をクライアント側にも反映しないと接続できなくなる。

次に、VPNだけPPPoE側を通るような設定を入れる。ゲートウェイを追加し、フィルター型のルーティングを追加する(参考サイト)。L2TP/IPsecを通すために以下のようにする。この設定をしても最初は接続できず試行錯誤した。もしかしたらフィルターの評価順がクリティカルなのかもしれない。

ip route default gateway tunnel 1 gateway pp 1 filter 500001 500002 500004 5000
03
ip filter 500001 pass * * udp 500 *
ip filter 500002 pass * * udp 4500 *
ip filter 500003 pass * * udp 1701 *
ip filter 500004 pass * * esp

クライアント側の設定。事前共有鍵を用いたL2TP/IPsecを指定すればAndroidでは特に何も設定しなくてもよかった。Windowsではデフォルトの設定ではNGで、オプションで「暗号化必須」「CHAPまたはPAP」を指定する必要があった。

トラブルシュートはYAMAHAのサイトが詳しい。

WordPress SSL化

Let’s Encrypt で取得した証明書をインストールする。

SSLCertificateFile /etc/letsencrypt/live/upper-ricefield.net/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/upper-ricefield.net/privkey.pem

DB更新とパッケージ更新

sudo yum install --enablerepo=remi-php74 php php-xmlrpc php-gd php-pdo php-mysqlnd php-pecl-mysql php-pecl-zip php-pecl-apc php-imagick

Webサーバで必要な設定

sudo nano /etc/httpd/conf/httpd.conf

Options All -Indexes +SymLinksIfOwnerMatch -FollowSymLinks

AllowOverride AuthConfig FileInfo Indexes Limit Options=MultiViews,Ind
sudo nano /etc/httpd/conf.d/virtual.conf
<VirtualHost *:80>
ServerName *****.upper-ricefield.net
DocumentRoot /var/www/wp_kldjlkdjslkdsja

Redirect permanent / https://ssl.web.somewhere/
ErrorLog logs/*****-error_log
CustomLog logs/*****-access_log combined env=!no_log
AllowEncodedSlashes On
</VirtualHost>
sudo nano /etc/httpd/conf.d/virtual-ssl.conf
<VirtualHost *:443>
DocumentRoot /var/www/klfjsalj
ServerName ssl.web.somewhere:443
ErrorLog logs/web-somewhere_ssl_error_log
TransferLog logs/web-somewhere_ssl_access_log
LogLevel warn
<Directory "/var/www/wp_cxo3zn9tlm">
        Options All -Indexes +SymLinksIfOwnerMatch -FollowSymLinks
        AllowOverride AuthConfig FileInfo Indexes Limit Options=MultiViews,Ind
</Directory>
<Directory /var/www/wp_aslseihldkd/wp-admin/>
        Order         deny,allow
        Deny from all
        Allow from ***.***.***.***/**
</Directory>
<Files wp-login.php>
        Order deny,allow
        Deny from all
        allow from ***.***.***.***
</Files>
<files xmlrpc.php>
         Order allow,deny
         Deny from all
</files>
<Files "/var/www/wp_seoiujo9hj/wp-admin/site-health.php">
        Order deny,allow
        Deny From All
        Allow From All
</Files>

Let’s Encrypt でワイルドカード証明書

まずはcertbotをインストールしAPIを叩く

sudo yum search --enablerepo=epel certbot

sudo certbot certonly --manual \
--server https://acme-v02.api.letsencrypt.org/directory \
--preferred-challenges dns \
-d *.upper-ricefield.net -d upper-ricefield.net \
-m ******@upper-ricefield.net \
--agree-tos
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
Requesting a certificate for *.upper-ricefield.net and upper-ricefield.net
Performing the following challenges:
dns-01 challenge for upper-ricefield.net

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please deploy a DNS TXT record under the name
_acme-challenge.upper-ricefield.net with the following value:

FL-dArNldjaskljl*******

Before continuing, verify the record is deployed.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Press Enter to Continue

この状態でDNSへの登録を行う。確認は(別ターミナルで)

dig @8.8.8.8 -t TXT _acme-challenge.upper-ricefield.net

正常に登録できるまではEnterは押さない。以下のようになれば証明書が発行されている。

Waiting for verification...
Cleaning up challenges
Subscribe to the EFF mailing list (email: ***@upper-ricefield.net).
Starting new HTTPS connection (1): supporters.eff.org

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/upper-ricefield.net/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/upper-ricefield.net/privkey.pem
   Your certificate will expire on 2022-01-21. To obtain a new or
   tweaked version of this certificate in the future, simply run
   certbot again. To non-interactively renew *all* of your
   certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

ワイルドカード証明書の場合は renew できないようだ…。

Forester 2.0D X Swissを購入し納得するまでの長い道のり(2)

後席を外して掃除コンプリートの図。はじめはここに犬の毛がびっしりたまっていた!

室内が埃っぽいという原因のひとつが犬車であることをつきとめた。ディーラーには「これは確かに禁煙車だが犬車ではないか。事前に説明すべきであるし、分かっていたら絶対に買わなかった。返金または車を交換してもらえるか?」と交渉した。

すると、とにかく持ってくるように。問題は解決するからとのこと。ほんまかと思いながらディーラーに赴き説明したところ、オゾン脱臭を試すとのこと。この時はほとんど返金に自分の気持ちが傾いていたのだが、この度だけは信用してみようと思った。相手はスバルディーラー歴うん十年のベテランであるし、こちらの顧客はとにかく自分の要望をかなえようと必死になるので有名だから、今回だけは自分も必死になってみようと思った。

ディーラーに赴くまでに室内を徹底的に清掃した。先輩たちの情報を色々と参考にさせていただいた。たとえばこちらはラゲッジルーム分解の方法を勉強させていただいたし、定番のみんカラのこのページは(左右逆ではあるが)センターコンソールを取り外し清掃するためにたいへん参考になった。

あとはオゾン脱臭の効果であるが、12月半ばに施工してもらったのだがそれなりに匂いは消えている。しかし、やはり埃っぽいのは取れないのである(続く)

Forester 2.0D X Swissを購入し納得するまでの長い道のり(1)

1年間スイスに長期出張している。少々悩んだがこちらでも車を購入することにした。色々とあったのだが購入後2ヶ月でようやく納得できる状態になった。ここまでの経過を誰かの参考になるかと思い書き連ねておく。

  1. どの車にするか
    欧州車も良いと思ったが、ここはやはりヨーロッパでしか乗れないスバル車にしようと思い、Boxer Diesel搭載車種を狙うことにする。
  2. 予算
    特に根拠はないのだが10000CHFまで(日本円で100万円ていど)。
  3. 中古車を探す。
    もちろん新車は無理なので(これはもしかしたら浅はかだったかもしれないが後述する)中古車に狙いを絞る。スイスでは autoscout24 が使いやすい。他に tutti.ch という何でも売買するヤフオクみたいなサイトもあるが、autoscout24かつディーラーが出品しているものにする(これが後になって効いた)。地域、予算、Diesel、SUBARUなどのクエリで自ずと数台に絞られてくる。
  4. 問い合わせと試乗
    絞られた数台を所有するディーラーにメールで問い合わせ、2つのディーラーに下見に行くことにした。2台のSHフォレスター、2.0D X Swiss 6MTに試乗した。走行距離97000kmで前のオーナーが大切にしていたのが良く分かる2010年1月登録、他方は走行距離が140000以上だが2011年型である。当然走行距離が多い方が予算内である。また、2010年型はEuro4だが2011年型はEuro5である。心は環境に優しく、安価な方をEuro5、2011年型に傾いた。
  5. 契約
    と言っても署名し、これからどうなるかの説明を受けるだけである。署名しただけでは車を乗って帰れるわけではない。スイスでは「人」に「ナンバープレート」が対応しており、ディーラーからカントンの交通局にデータを送り、ナンバープレートを受け取る。また、任意保険が事実上必須であり(強制保険というものはないように見える)、その手続きもディーラーでやってもらえた。つまり、ナンバープレートがディーラーに来るまで乗ることはできない。契約後1週間ていどでディーラーから連絡があり、車を受け取ることができた。
  6. 諸費用
    車の代金の他に必要な費用は、
    任意保険年額1200CHFていど
    道路税 年額600CHFていど(まず購入時に年末までの40CHFを払い、年明けに残りの請求がカントンから来た)、これに加えEuro5なので10%割増。Euro6の場合は不問なのかもしれない。
    ナンバープレート代 90CHF
    と、けっこうな額になった。

ここまでが完了したのが2016年12月はじめ。よく考えてみると初めての中古車であった。だいたい初めての経験の際というのは見落しがあるものである。

とにかく室内が埃っぽいのである。試乗の時には特に気にはならなかったのが不思議である。とにかく納得できないので室内を徹底して掃除した。後席を外すと、何と犬の毛がたまっているではないか。つまりこの車のオーナーは犬を乗せていたということになる。ああどうしよう…(続く)。

ダイソーステンレス製ふた付ボールでストラット上部の保護

シリコンに乗り遅れたので…。

サイズが合うかどうか不安だったが…。
サイズが合うかどうか不安だったが…。

ピッタリだがガタつきあり。
ピッタリだがガタつきあり。

そこで、風切り音防止モールドア用の余りでそれらしく
そこで、風切り音防止モールドア用の余りでそれらしく
全景。運転席側を見ると、洗車したときの水を防いでおり効果ありということが分かる。
全景。運転席側を見ると、洗車したときの水を防いでおり効果ありということが分かる。

静音化その6 (Bピラーデッドニング)

ずーっと気になっていた、Bピラーからの「コツコツ」音への対策を実施!Bピラーの分解についてはみんカラの諸先輩方の整備手帳通り(YA100さんつけめん大好きさん)。

Bピラーデッドニング1
Bピラーを分解後、サイドシル部分にシンサレートを詰め、穴にボディデッドニングキットを貼り貼り

これで格段に静かになったものの、まだ「コツコツ」が…。ということはやはりBピラー内に原因があるということ!(おんせん県おおいたさんの仰っているのと同じ症状)
Bピラーのデッドニング2
思い切って引き出すと、いかにもコツコツ言いそうなコネクタが!これにエブトシーラーまいて、シンサレートでだめおししました。

静音化その5 (風切り音軽減マットをカーペット下へ)

このプラットフォームのカーペットを捲るにはハードルがある。それはリアシート下のクリップ!一見かんたんに外れそうだが外れない。みんカラの諸先輩方はかんたんに外されているように見えるが、カーペットを切断された方もいらっしゃるようだ。意を決っしてDらーに尋ねると、さいしょは「簡単に外れるはず」だったが、結局「はめ殺しになっている」とのこと。この状態でカーペットを外す/戻すにはかなり難儀する。難儀しすぎたので、本題の、カーペット下に風切り音軽減マットを入れた状態の写真は撮り忘れた。

黒いのはすぐ外れるのだが、白いやつが外れない…。
黒いのはすぐ外れるのだが、白いやつが外れない…。