【2019年7月】

delegate + TLS 1.2

このエピソードの続き。

CentOS 5.9 + TLS 1.2

今回は、delegate でリバース・プロキシを組んでいる環境で TLS 1.2 での接続を行う。

現在の環境では、FireFoxで警告が出てしまう。

SSL警告

リバース・プロキシの環境では、ブラウザの接続先はプロキシ・サーバとなるため、プロキシ・サーバが TLS に対応していなければ、この警告が出る。
従って、プロキシ・サーバがロードしている openssl ライブラリを更新して対処する事にする。

現在のプロキシ・サーバがロードしている openssl は 0.9.8x。古い。(^^;

Loaded: OpenSSL 0.9.8x 10 May 2012
Loaded: Zlib 1.2.3

これを、新しい openssl を読み込ませるように更新する。

それでは、トライしてみる。

(1).opensslを手動でインストールする。

$ cd openssl-1.0.2s
$ ./config shared enable-ssl2 enable-ssl3 --prefix=/*****/openssl-1.0.2s
$ make
$ su -
# make install

(2).opensslライブラリを差し替える。

この環境では、単純に delegate のディレクトリに openssl ライブラリを置く事で、そのライブラリを読むようにしている。

# cd /*****/delegate/sbin
# ls -l
合計 4084
-rwxr-xr-x. 1 root root 4180673 2月 19 23:43 2014 delegated
lrwxrwxrwx. 1 root root 51 7月 18 09:58 2019 libcrypto.so -> /*****/openssl-0.9.8x/lib/libcrypto.so.0.9.8
lrwxrwxrwx. 1 root root 48 7月 18 09:59 2019 libssl.so -> /*****/openssl-0.9.8x/lib/libssl.so.0.9.8

このシンボリックリンクを置き換える。
既存のライブラリをバックアップする。

# mv libcrypto.so 20190718.libcrypto.so
# mv libssl.so 20190718.libssl.so

新しい openssl ライブラリのシンボリックリンクを作成する。

# ln -s /*****/openssl-1.0.2s/lib/libcrypto.so.1.0.0 libcrypto.so
# ln -s /*****/openssl-1.0.2s/lib/libssl.so.1.0.0 libssl.so

確認する。

# ls -l
合計 4084
lrwxrwxrwx. 1 root root 51 2月 20 15:14 2014 20190718.libcrypto.so -> /*****/openssl-0.9.8x/lib/libcrypto.so.0.9.8
lrwxrwxrwx. 1 root root 48 2月 20 15:14 2014 20190718.libssl.so -> /*****/openssl-0.9.8x/lib/libssl.so.0.9.8
-rwxr-xr-x. 1 root root 4180673 2月 19 23:43 2014 delegated
lrwxrwxrwx. 1 root root 51 7月 18 09:52 2019 libcrypto.so -> /*****/openssl-1.0.2s/lib/libcrypto.so.1.0.0
lrwxrwxrwx. 1 root root 48 7月 18 09:52 2019 libssl.so -> /*****/openssl-1.0.2s/lib/libssl.so.1.0.0

delegate を再起動し、ロードされた openssl ライブラリを確認する。

Loaded: OpenSSL 1.0.2s 28 May 2019
Loaded: Zlib 1.2.3

上記(1)でインストールした openssl 1.0.2s がロードされた。

(3).正常な鍵マークが復活!

正常な鍵マークが復活!

無事、TLS 1.2 で通信された。

TLS 1.2 で接続された

これでよし!

楽天SocialNewsに投稿!
0 0 0

楽天アフィリエイト WordPressプラグイン

WordPress用の楽天アフィリエイト プラグインを作った。

これまで、Amazonのアソシエイトを中心に商品リンクを貼っていたのだが、Amazonアソシエイトは規約が変更され、ある程度の売上実績がないとAPIが利用できなくなってしまった。

[重要] Product Advertising API 利用ポリシーの変更について

そこで、楽天アフィリエイトにもAPIがあるので、主軸を楽天アフィリエイトに移そうと思う。

API一覧 - 楽天ウェブサービス

Amazonでは、商品のコードは「ASIN」と呼ばれる商品コードに統一されており、どのような種類の商品でも、同じAPIで「ASIN」を商品コードとする事で商品リンクが作成できた。
しかし楽天では、商品の種類によって、呼び出すAPIや商品コードの指定方法が異なるので、ここが少々めんどくさい。
とりあえず今回は、楽天市場用、楽天ブックス(書籍)用、楽天ブックス(DVD/Blu-ray)用の3種類のプラグインを作成する事にする。

また、以前に、Aliexpress用プラグインを作成しているが、この実装に合わせて、以下の様な書式で商品リンクの挿入ができるようにし、キャッシュ機能も実装する。

(1).楽天市場

楽天市場の商品では、商品コードを拾うのが少々めんどくさい。
ページのソースを開き、ソース中の以下の様な記述を探す。

itemid:['honest-online:10000015'],

商品コードは「:」で区切られていて、前半が店舗コード、後半が商品コードと思われるが、「:」も含めて全体が商品コードであるので、これを商品コードとして記述する。
小さいサイズの商品リンクも表示できる。

[rakuten size="large"]honest-online:10000015[/rakuten]
[rakuten size="small"]honest-online:10000015[/rakuten]

実際の表示は以下のようになる。

【日本正規代理店】ORICO 4ポート USBハブ usb3.0 ハブ usb3 ハブ usbハブ 3.0 高速 5Gbps USB3.0 HUB バスパワー VL812チップ搭載 30CM …
【日本正規代理店】ORICO 4ポート USBハブ usb3.0 ハブ usb3 ハブ usbハブ 3.0 高速 5Gbps USB3.0 HUB バスパワー VL812チップ搭載 30CM …
【日本正規代理店】ORICO 4ポート USBハブ usb3.0 ハブ usb3 ハブ usbハブ 3.0 高速 5Gbps USB3.0 HUB バスパワー VL812チップ搭載 30CM …
【日本正規代理店】ORICO 4ポート USBハブ usb3.0 ハブ usb3 ハブ usbハブ 3.0 高速 5Gbps USB3.0 HUB バスパワー VL812チップ搭載 30CM …

 

(2).楽天ブックス(書籍)

楽天ブックス(書籍)の商品では、ページ中に表示されている「ISBNコード」を商品コードとして記述する。

[rbooks size="large"]9784062764131[/rbooks]
[rbooks size="small"]9784062764131[/rbooks]

実際の表示は以下のようになる。

永遠の0
永遠の0
【講談社文庫】百田 尚樹
永遠の0
永遠の0
【講談社文庫】百田 尚樹

 

(3).楽天ブックス(DVD/Blu-ray)

楽天ブックス(DVD/Blu-ray)では、ページ中に表示されている「JANコード」を商品コードとして記述する。

[rdvd size="large"]4988135805799[/rdvd]
[rdvd size="small"]4988135805799[/rdvd]

実際の表示は以下のようになる。

ショーシャンクの空に
ショーシャンクの空に
ティム・ロビンス/モーガン・フリーマン/ウィリアム・サドラー/フランク・ダラボン
ショーシャンクの空に
ショーシャンクの空に
ティム・ロビンス/モーガン・フリーマン/ウィリアム・サドラー/フランク・ダラボン

 

Aliexpress用プラグインとフォーマットを合わせてあるので、これらを混在させて並べてもOK。

エイリアン 【Blu-ray】
エイリアン 【Blu-ray】
トム・スケリット/ヴェロニカ・カートライト/ハリー・ディーン・スタントン/リドリー・スコット
5Pcs/card JNKXIXI Bateria CR2032 3V Lithium Button Battery BR2032 DL2032 ECR2032 CR 2032 Lithium Batteries
5Pcs/card JNKXIXI Bateria CR2032 3V Lithium Button Battery BR2032 DL2032 ECR2032 CR 2032 Lithium Batteries
人魚の眠る家
人魚の眠る家
【幻冬舎文庫】東野圭吾
ガタカ
ガタカ
イーサン・ホーク/ユマ・サーマン/ジュード・ロウ/アンドリュー・ニコル
2PCS H7 H3 LED H1 H9 H4 H13 Bulb 60W Headlights Auto Lamp With H11 LED car Light 6000K White 12V Automobile LED lamp BH
2PCS H7 H3 LED H1 H9 H4 H13 Bulb 60W Headlights Auto Lamp With H11 LED car Light 6000K White 12V Automobile LED lamp BH

 

これでヨシ。
とりあえず、バージョン1.0。

楽天SocialNewsに投稿!
0 0 0

CentOS 5.9 + TLS 1.2

あるWEBサイトで、最新の FireFox でSSLの警告が出るようになった。

SSL警告

SSLは Let's Encryptで、何か更新処理を誤ったのだろうかと思ったのだけれど、他のブラウザ(Internet Explorer 11、Edge、Google Crome)では警告は出ておらず、FireFoxのみで警告が出ている。スマホでも同様にFireFoxでは警告が表示される。
この警告が出るのは、企業のサイトでは、ちょっとマズい感じ。

この警告がどうして出るのかいろいろ調べてみると、証明書そのものも問題ではなく、プロトコルの問題のようだ。
どうやら、各ブラウザが2020年に TLS 1.0、TLS 1.1 での接続ができなくなるように動作が変更されるようなので、FireFoxは、その事前警告を出しているようだ。

TLS 1.0 で接続されている

このWEBサイトはレンタルサーバで、OSは CentOS 5.9。
root権限が貰えているサーバであるけれど、テスト環境があるわけではないので、様々アップデートをかけるのは少々リスクが大きい。なんとかWEBサーバのみに影響範囲を抑える形で対処したい。

いろいろ悩んで、以下の方法で対処する事にした。

① 最新のopensslをユーザ領域に手動でインストールする。
② Apacheの起動スクリプトを修正し、上記(1)でインストールしたopensslをロードさせるようにする。

それでは、トライしてみる。

(1).opensslを手動でインストールする。

$ cd openssl-1.0.2s
$ ./config shared enable-ssl2 enable-ssl3 --prefix=/*****/local
$ make
$ make install

稼働しているApacheは、古いバージョンのライブラリをロードする様になっている。
Apacheを再コンパイルするなどすると影響が大きいので、インストールしたライブラリのバージョンを偽装する事にする。

# cd /*****/local/lib
# ln -s libssl.so.1.0.0 libssl.so.6
# ln -s libcrypto.so.1.0.0 libcrypto.so.6

(2).Apacheが上記(1)でインストールしたライブラリを正しくロードするか、依存関係を確認してみる。

まず、通常の起動。
/usr/lib 配下のライブラリがロードされる。

# ldd /usr/sbin/httpd | grep libssl
libssl.so.6 => /lib/libssl.so.6 (0xb7b04000)

次に、上記(1)でインストールしたライブラリをロードさせての起動。
上記(1)でインストールしたライブラリがロードされた。

# LD_LIBRARY_PATH=/*****/local/lib ldd /usr/sbin/httpd | grep libssl
libssl.so.6 => /*****/local/lib/libssl.so.6 (0xb7a8d000)

よし、いけそうだ。

(3).Apacheの起動スクリプトを修正する。

# cd /etc/init.d
# vi httpd

Apacheの起動部分に、LD_LIBRARY_PATHでopensslのパスを挿入する。
これにより、上記(1)でインストールしたライブラリは、Apacheに限定して使用される。

LANG=$HTTPD_LANG LD_LIBRARY_PATH=/*****/local/lib daemon --pidfile=${pidfile} $httpd $OPTIONS

(4).Apacheを再起動する。

# /etc/init.d/httpd restart

が、残念ながら、phpのモジュールのロードでエラーが発生してしまった。

# /etc/init.d/httpd restart
httpd を停止中: [ OK ]
httpd を停止中: [失敗]
httpd を起動中: httpd: Syntax error on line 210 of /etc/httpd/conf/httpd.conf: Syntax error on line 6 of /etc/httpd/conf.d/php.conf: Cannot load /etc/httpd/modules/libphp5.so into server: /etc/httpd/modules/libphp5.so: undefined symbol: EVP_md2
[失敗]
#

がんばってphpの再インストールもトライしようかと思ったけれど、このWEBサイトではphpは使用していないので、phpのサービスを停止する事で対処する事にした。

(5).サーバのコントロール・パネルでphpのサービスを停止する。

phpを停止

(6).再びApacheを再起動する。

# /etc/init.d/httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]
#

成功した!

(7).正常な鍵マークが復活!

正常な鍵マークが復活!

無事、TLS 1.2 で通信された。

TLS 1.2 で接続された

これでよし!

楽天SocialNewsに投稿!
0 0 0

車のランプをLED化(その9)

このエピソードの続き。

車のランプをLED化
車のランプをLED化(その2)
車のランプをLED化(その3)
車のランプをLED化(その4)
車のランプをLED化(その5)
車のランプをLED化(その6)
車のランプをLED化(その7)
車のランプをLED化(その8)

今回は、ヘッドライトのハイビームをLED化する。

ハイビームをLED化

愛車カローラフィールダーのハイビームは「HB3(9005)」と呼ばれるタイプの電球。

【1年保証】fcl ledヘッドライト H11 H16 HB3 HB4 HIR2 H7 ハイビーム フォグランプ 車検対応 ファン付 イエロー ホワイト ハロ…
【1年保証】fcl ledヘッドライト H11 H16 HB3 HB4 HIR2 H7 ハイビーム フォグランプ 車検対応 ファン付 イエロー ホワイト ハロ…
ledヘッドライト h4 h7 h8 h11 h16 hb3 hb4 psx24 psx26 hir2 信玄 XR 車検対応 12V 24V 対応 6000 最強 ルーメン ハイビーム フォグラン…
ledヘッドライト h4 h7 h8 h11 h16 hb3 hb4 psx24 psx26 hir2 信玄 XR 車検対応 12V 24V 対応 6000 最強 ルーメン ハイビーム フォグラン…
LEDヘッドライト H4 hi/lo H8 H11 HB3 HB4 8000LM 防水 一体型 バラスト不要 (LED-S2)最強 ルーメン フォグランプ【送料無料】【…
LEDヘッドライト H4 hi/lo H8 H11 HB3 HB4 8000LM 防水 一体型 バラスト不要 (LED-S2)最強 ルーメン フォグランプ【送料無料】【…

購入したLED電球はこちら。
Aliexpressで購入し、2個セットで7.11ドル(送料込み)。バルブ1個あたりの金額は、わずか360円くらい。激安だ。
あまりにも安いので、正直怖いのだけれど、今のところ、Aliexpressから購入したLEDで大きなハズレはないので、とりあえずこれで行く。

2Pcs Car Lights Bulbs LED H10 HB3 9005 LED Auto Headlights 12V 120W 12000LM 6000K Automobile Fog Lamp LED Light
2Pcs Car Lights Bulbs LED H10 HB3 9005 LED Auto Headlights 12V 120W 12000LM 6000K Automobile Fog Lamp LED Light

購入したLED電球 購入したLED電球

ちなみに、別の愛車 HONDA NC750S のヘッドライトは既にLED化しているが、こちらもAliexpressで購入したLED電球への交換だが、約半年が経過して、今のところ問題なく使用できている。

左が元々付いていたHB3電球、右が購入したLED電球。

HB4電球とLED電球

さて、交換。
ボンネットを開け、ハイビームのランプのコネクタを探す。

ハイビームのランプのコネクタを探す

反時計周りに120度回してランプを取り外す。

ランプを取り外す

LED電球に交換する。

ED電球に交換する

取り付ける前に点灯テストをする。OK。

点灯テストをする

ハイビームを点灯してみる。
左がLED電球、右が従来の電球。
明るさの差はそう感じないけれど、白く発色する分、明るい気がする。

ハイビームを点灯してみる(LED電球) ハイビームを点灯してみる(従来の電球)

壁に光を当てて、発光状態を確認してみる。
まず、ロービーム。

ロービーム

次にハイビーム。
左がLED電球、右が従来の電球。

ハイビーム(LED電球) ハイビーム(従来の電球)

よし、バッチリでしょう。

取り外したHB3電球は、梱包して保管しておく。

梱包して保管しておく

■2019/05/04追記

ランプを交換した際に、ランプの近くにあった吸気ダクトを固定していたクリップを破損させてしまい、吸気ダクトが宙ぶらりんになってしまっている事に気付いた。

クリップを破損

宙ぶらりんのままだと、走行中に、振動などでフレームなどにぶつかって砕けるなどすると、エンジンの駆動部分に巻き込んだりするといけないので固定する必要がある。
普通にクリップを購入するとか、たとえば100円ショップなどで結束バンドを購入してきて留めればいいのだけれど...

トリムクリップ 5ピース ニッサン系 63848-01G00 STRAIGHT/44-2005 (STRAIGHT/ストレート)
トリムクリップ 5ピース ニッサン系 63848-01G00 STRAIGHT/44-2005 (STRAIGHT/ストレート)

そこはビンボー人ずんべ、手元にあるもので固定をトライしてみる。
例によってがらくた箱をひっくり返して探してみると...
あった! 紐!
これは、リュックサックか何かを破棄する時に、取り外しておいたもの。

紐

これで縛って吸気ダクトを固定する。

吸気ダクトを固定

とりあえず、これでヨシ。

■2019/07/14追記

車に積んだままになっている工具箱を整理していたら、クリップが発掘された。(^^;

クリップを発掘

いつ購入したのか、まったく記憶にないのだけれど、おそらく25年くらい前、トレノ(ただしAE85)に乗っていた頃に買ったものだろうな。

と、言う事で、紐は取り外し、クリップで留め直した。

クリップで留め直した

ちゃんちゃん。

一連記事:

楽天SocialNewsに投稿!
0 0 0

広告

まとめページ

取得した資格
登った山

広告

サイト内検索

WordPress

広告

RSS

RSS 記事
RSS コメント
Server offered by
有限会社パテンティックソフトウェア
Profile for zunbe
zunbeの読書メーター
読んだ本
-
ページ数
-
書評投稿数
-