Zabbix ServerをUpdateしたら画面が真っ白に

Zabbix Server/Web/Agent の新しいVerが出ていたので yum で Updateしたら画面が真っ白に・・・

/var/log/nginx/error.log を確認した所

2018/11/17 12:09:45 [error] 960#960: *9 FastCGI sent in stderr: "PHP message: PHP Warning:  require_once(/etc/zabbix/web/maintenance.inc.php): failed to open stream: Permission denied in /usr/share/zabbix/include/classes/core/ZBase.php on line 271PHP message: PHP Fatal error:  require_once(): Failed opening required '/etc/zabbix/web/maintenance.inc.php' (include_path='.:/usr/share/pear:/usr/share/php') in /usr/share/zabbix/include/classes/core/ZBase.php on line 271" while reading response header from upstream, client: ***.***.***.***, server: zabbix, request: "GET /zabbix/index.php HTTP/1.1", upstream: "fastcgi://unix:/var/run/php-fpm/php-fpm.sock:", host: "***.***.***.***"

上記エラーを出力

Updateしたら、権限書き換わってアクセスエラーしとる奴やねって事で

# ls -l /etc/zabbix
drwxr-x---   2 apache apache    56 Nov 17 11:54 web
-rw-r--r--   1 root   root   10632 Nov 12 19:55 zabbix_agentd.conf
drwxr-xr-x   2 root   root      38 Nov 17 11:54 zabbix_agentd.d
-rw-r-----   1 root   zabbix 15784 Sep 17 04:42 zabbix_server.conf
-rw-r-----   1 root   zabbix 15527 Nov 12 19:55 zabbix_server.conf.rpmnew

見事 apache:apache

# chown -R nginx:nginx /etc/zabbix/web

CentOS 7で traceroute

CentOS 7には、デフォルトで traceroute がインストールされていない
代替手段として、 tracepath なるものがインストールされているが
これは UDP パケットになるので環境によっては使用することができない

というわけで、取り敢えず traceroute ぶっ込み
なんか、Redhat/CentOS 7 になって色々変更はいってるのはいいんだけど、基本的なものも削除するのホント辞めて欲しい

RTX1210のPort Scan対策


との事だったので
26.11 外側から受信したパケットに該当する変換テーブルが存在しないときの動作の設定
デフォルトのreject だと
0~1023 : 破棄してRST返す / 1024以上 : 破棄して終了
ということでNATしてることを態々教えているようなものなので、discardに変更

nat descriptor masquerade incoming 1 discard

を埋め込み

MyDNS.jpのLet's Encrypt証明書を ECDSA対応にしつつ、DNS認証を通す

今のLet's Encryptの証明書は、TLS1.2対応の ECDHE-RSA(2048bit)-AES256-GCM-SHA384 証明書となっている
RSA 2048bitは重たいので、より強固でありながら bit数が短い ECDSA(256bit)の証明書を発行しようかと


暗号スイート強度については、下記に詳細が
-> 暗号スイートの暗号強度と、公開鍵のビット数の設定、及びRSAとECDHEでサーバ負荷の比較 - Apache 2.4系でHTTP/2対応サーバを構築してみるテスト。

というこで、AES128を使用する場合、ECDHE(256bit)-ECDSA(256bit)-AES128-*のパフォーマンスが、抜き出ています。
サーバ側処理が1.6[ms]で終わり、共通鍵のパフォーマンスは、87,510.36 KB/sです。
そりゃ、超巨大なサイトでは、ECDHE(256bit)-ECDSA(256bit)-AES128-GCM-SHA256あたりが、利用される訳です。

AES256を使用する場合、ECDHE(384bit)-ECDSA(256bit)-AES256-*が良いです。
サーバ側処理が3.1[ms]で終わり、共通鍵のパフォーマンスは、62,363.31 KB/sです。
これでも、サーバ側処理は、ECDHE(256bit)-RSA(2048bit)よりも軽いので、暗号強度を高めるなら、こちらが現実的です。

で、標準のままだとECDSA証明書を発行されないので
ECDSA用のCSRを作成して認証局に送付して、ECDSAな証明書を発行して貰う流れになる

certbotには、csrを指定するオプションもあるのでそれを使用

んで、手順は

1. ECC曲線秘密鍵の作成

NIST 推奨曲線名 P-256 (OpenSSL 上の曲線名 prime256v)を使用して、ECC秘密鍵の作成

# openssl ecparam -name prime256v1 -genkey -out private.key
2.ECC秘密鍵から、CSRの作成
# openssl req -new -sha256 -key private.key -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP  ## <- 必須
State or Province Name (full name) []:Tokyo
Locality Name (eg, city) [Default City]:City ## <- 必須
Organization Name (eg, company) [Default Company Ltd]:Company  ## <- 必須
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []: ## <- 必須
Email Address []:

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:

CSR作成時にディスティングイッシュネームを要求されるけど、必要最低限叩き込んでおけばいい(個人サイトなら)
必須というか、Common Name以外は Default値がセットされて変な証明書ができてしまうので(苦笑

3. MyDNSのDNS認証を実行

一発目は --dry-run いれて検証すると良い

certbot certonly --manual --preferred-challenges=dns \
--manual-auth-hook /etc/letsencrypt/DirectEdit-master/txtregist.php \
--manual-cleanup-hook /etc/letsencrypt/DirectEdit-master/txtdelete.php \
-d <ドメイン名> --csr /etc/nginx/ssl/server.csr \
--cert-path /etc/nginx/ssl/server.pem --fullchain-path /etc/nginx/ssl/fullchain.pem \
--server https://acme-v02.api.letsencrypt.org/directory \
--agree-tos -m <メールアドレス> --manual-public-ip-logging-ok --dry-run

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator manual, Installer None
Starting new HTTPS connection (1): acme-staging-v02.api.letsencrypt.org
Performing the following challenges:
dns-01 challenge for <ドメイン名>
Waiting for verification...
Cleaning up challenges

IMPORTANT NOTES:
- The dry run was successful.

成功すると、最後に successful 表示が出る
dry-runが成功したら、実際に証明書を発行

4.作成された証明書の確認

別にやらなくてもいいけど、どんな事が記載されているのかみたければ

# openssl x509 -text -fingerprint -noout -in /etc/nginx/ssl/fullchain.pem

で中身を確認できる

後は、NginxのSSL証明書の位置をconf で書き換えたり、定期的に実行しているなら定期実行バッチファイル書き換えたりすればOK

https://i.imgur.com/qHuPku4.png
無事 ECDHE-ECDSA-AES256-GCM-SHA384 になりましたっと

二輪用 Brembo シールキット

二輪バイク用のBremboキャリパーシールキットは
HONDAでリパッケージ品が買える

ピストン径 34mm
06431-MAK-003
ピストン系 32mm
06451-MA7-405
ピストン径 30mm
06452-MAK-003

基本、ダストシールとオイルシールの1セットなので
フロント2Pot 34x30なら、キャリパー1個で 2個ずつ必要となる(計 4個)

ちなみに国産と違って、Bremboの場合シールに向きがあるので注意!!
リング断面が台形状になっており、長辺(径が大きい方)がピストンの奥側に、短辺(径が小さい方)がピストンの手前側になる

ピストンを押し込んでいくと、短辺 -> 長辺の順にシールと当たる事になる
って、「Brembo シール 向き」あたりで検索すると図解してるページあるのでそっち見てね(ヒドい

Firefox Tab Multi Low 多段表示

Firefox Quantumになってから
タブの多段表示ができず
Tab Mix PlusがいつになってもVerUpしないので
cssで対応

Firefox
メニュー -> ヘルプ -> トラブルシューティング情報
からプロファイルディレクトリを確認
(フォルダーを開くでもいいんだけど)

プロファイルディレクトリに
chromeディレクトリを作成し
その中に userChrome.css を作成して、Firefoxを再起動

/* 多段タブの設定 */
#titlebar-buttonbox {
display: block !important;
vertical-align: top !important;
}
.tabbrowser-arrowscrollbox scrollbox {
overflow: visible !important;
}
.tabbrowser-arrowscrollbox scrollbox > box {
display: block !important;
}

/* タブの高さ・横幅設定 */
.tabbrowser-tab:not([pinned]) {
min-height: 30px !important;
max-height: 30px !important;
min-width: 75px !important;
max-width: 150px !important;
}
.tabbrowser-tabs .tabbrowser-tab {
vertical-align: top !important;
-moz-box-sizing: border-box !important;
min-height: 30px !important;
max-height: 30px !important;
}

/* 新しいタブボタン設定 */
.tabs-newtab-button {
vertical-align: bottom !important;
height: 30px !important;
}

今の所こんなので取り敢えずの緊急回避

<追記>
なんかタブ消したり、再起動した後の挙動があやしいので変更

/* 多段タブの設定 */
#titlebar-buttonbox {
display: block !important;
vertical-align: top !important;
}
.tabbrowser-arrowscrollbox scrollbox {
overflow: visible !important;
}
.tabbrowser-arrowscrollbox scrollbox > box {
display: block !important;
}

/* タブの高さ・横幅設定 */
.tabbrowser-tab:not([pinned]) {
min-height: 30px !important;
max-height: 30px !important;
min-width: 100px !important;
}
.tabbrowser-tabs .tabbrowser-tab {
vertical-align: top !important;
-moz-box-sizing: border-box !important;
min-height: 30px !important;
max-height: 30px !important;
}

/* 新しいタブボタン設定 */
.tabs-newtab-button {
vertical-align: bottom !important;
height: 30px !important;
}

au IPv4 vs IPv6 SpeedTest

auだったので、お手軽にv6に出来たので速度比較してみた

https://i.imgur.com/X4LtrZM.png
https://i.imgur.com/Dev35YF.png

もっとも、元々auはv4がかなり速いのであんまりv6にする意味が・・・
自宅内が直v6になるので、v6対応機器あれば嬉しいけど正直現状だと直v6の恩恵があまりないからなあ

RTX1210 auひかりで IPv6

取り敢えず基本的な設定だけ(auひかり電話 契約)
基本はFletsの時と同様
-> http://www.rtpro.yamaha.co.jp/RT/FAQ/FLETS-HIKARI-NEXT/ipv6_ipoe.html


auのHGWの設定を
DHCPv6サーバー設定
設定2[RA:プレフィックス配布 DHCPv6:プレフィックス/IPv6アドレス配布]
に設定して

RTX1210のconfigに以下を追記
LAN1 : Local
LAN3 : WAN
の使用法の場合

ipv6 prefix 1 ra-prefix@lan3::/64
ipv6 lan1 address ra-prefix@lan3::1/64
ipv6 lan1 rtadv send 1 o_flag=on
ipv6 lan1 dhcp service server
ipv6 lan3 dhcp service client ir=on
dns server dhcp lan3

dns server dhcp lan3 に関しては、IPv4の設定として dns server 指定しているの意味がない
IPv4dns server設定しているのなら不要
端末にGoogle Public DNSでも登録すればいいか

上記設定後に

# show ipv6 address lan1
LAN1 scope-id 1 [up]
 Received:    744 packets 66036 octets
 Transmitted: 65 packets 7067 octets

 グローバル     2001:xxxx:xxxx:1::1/64 (lifetime: 298/298) <- グローバル表記があれば問題無くIPv6を取得できている
 リンクローカル fe80::2a0:deff:fef2:c46e/64
 リンクローカル ff02::1/64
 リンクローカル ff02::2/64
 リンクローカル ff02::1:ff00:1/64
 リンクローカル ff02::1:fff2:c46e/64

# show status ipv6 dhcp

DHCPv6 status

  LAN1 [server]

  LAN3 [client]
    state: established
    server:
      DNS server[1]: 2001:xxxx:xxxx:4::1 <- DNS Serverが通知されている
      DNS server[2]: 2001:xxxx:xxxx:4::1

上記のようになればOK