rabbit51

it's since Nov.30 2005
May.29 2014, transferred from broach

Synology DS-216JのDSMアップデート と/etc/nginxへの影響#2

2018-02-28 08:50:00 | DS-216J
Synology DS-216JのDSMアップデートとWebStationの/etc/nginxディレクトリで「/etc/nginx」の内容が大きく変更(再作成)された。2018年2月27日DSMのアップデートが発行されていたので、どの程度の影響があるか確認した。
アップデートをダウンロード


アップデートをインストール


アップデート完了


「/etc/nginx」ディレクトリ内の変化を確認

「/etc/nginx/nginx.conf」が更新されている。
前回更新で配置換えした、「/etc/nginx/conf.d」=「/usr/local/etc/nginx/conf.d」に変化は無かった。
Basic認証用ファイル「/usr/local/etc/nginx/conf.d/auth/tus」-- hard link --> 「/usr/local/etc/nginx/auth/tus」の内容も変化無かった。
Photo Station、 ベーシック認証ページ、Web Stationへのアクセスも変化無かった。
今回のアップデートは、バージョンのアップデートでなく、「update#」なので、バージョンのアップデートが確認できるまで、定期的に、更新時に設定が変化するか追跡する予定。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

iPhone構成ファイルの暗号化スクリプト

2018-02-27 15:00:00 | iPhone
iPhone構成ファイルユーティリティのシミュレートで構成ファイルをテンプレートから生成したが、構成ファイル内に設定されたパスワードがある事から、デバイス毎に暗号化する事が求められる。
構成ファイルを暗号化するためには、「PayloadContnent」内の「array」データを取り出し暗号化する事。暗号化したデータを「EncryptedPayloadContent」として置き換える必要がある。エディターなどで編集することも可能であるが、一連の作業をスクリプトで自動化してみた。

構成ファイルから暗号化対象部分を取り出すのは、「iPhone構成ファイルユーティリティのシミュレート」で下記の処理で実現できることを示した。

Macでは、
/usr/bin/xmllint --xpath "/plist/dict/array" CertFile.mobileconfig > CertFile-CryptBody.mobileconfig
で、暗号化対象部分をファイル化できる。
構成ファイルの「Description」に2バイトコード(UTF-8)」の記述があると、抽出されたファイルでは、「松」が「松」などxml表記に変換される。ファイルとしては問題ないのだが、表示上「松」の文字が何であるか可読性が悪い。
また、構成ファイルから「暗号化対象」部分以外を取り出すのに「diff」を使用すると、暗号化対象部分にあるこれらの「2バイトコード」行が不一致行となってしまう。「暗号化対象」部分の抽出を行なっているのは、「xpath」なので、「xpath」を調べていると、OS Xには、「/usr/bin/xpath」があるらしい。直接実施してファイル化してみる。

/usr/bin/xpath CertFile.mobileconfig "/plist/dict/array" > CertFile-CryptBody.mobileconfig

「2バイトコード」の変換が行われていない。「xpath」を直接使うこととした。
構成ファイルを暗号化するために必要な一連のコマンドをまとめてみると

「WiFi_11nagb.mobileconfig」構成ファイルを対象とした暗号化プロセス
(1)暗号化対象部分の抽出
「/usr/bin/xpath WiFi_11nagb.mobileconfig "/plist/dict/array" > WiFi_11nagb-EncryptBody.txt」
(2)暗号化対象以外の抽出
「/usr/bin/diff -w --new-line-format='%L' --unchanged-line-format='' WiFi_11nagb.mobileconfig WiFi_11nagb-EncryptBody.txt > WiFi_11nagb-BasicBody.txt」
(3)暗号化対象部分の暗号化とBASE64化
「/usr/bin/openssl smime -encrypt -in WiFi_11nagb-EncryptBody.txt -outform der -CAfile CApub.pem device-cert.pem | /usr/bin/openssl base64 -out WiFi_11nagb-crypted.b64」
(4)「WiFi_11nagb-BasicBody.txt」内の「<key>PayloadContent</key>」を「<key>EncryptedPayloadContent</key>¥n<data>WiFi_11nagb-crypted.b64の内容</data>¥n」で置き換える
(5)置き換えられたテキスト(4)を「WiFi_11nagb-Encrypted.txt」ファイルとして書き出す
(6)署名する
「/usr/bin/openssl smime -sign -in WiFi_11nagb-Encrypted.txt -signer CApub.pem -inkey CAkey.pem -outform der -out WiFi_11nagb-Encrypted-Signed.mobileconfig -nodetach」

OS X標準で使用できる「perl」で作成した


実行


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Synology DS-216Jにサーバ証明書をインポートする

2018-02-22 09:30:00 | DS-216J
Synology Disk Station DS-216Jの「セキュリティ」「証明書」「追加」「新しい証明書を追加してください」で「自署証明書の作成」を行うことでDS-216J用サーバ証明書の作成と設定が可能である。しかし、証明書のサブジェクト構成を自由に設定できない。ルート証明書のサブジェクトも自由にならない。opensslを使い、プライベートCAを設定し、DS-216J用のサーバ証明書を発行し、DS-216Jに組み込んでみた。

「セキュリティ」「証明書」「追加」「新しい証明書を追加してください」「証明書のインポート」を選択



作成した証明書を設定する
「秘密鍵」: サーバ証明書の秘密鍵
「証明書」: サーバ証明書の公開鍵
「中間証明書」: CAの公開鍵(ルートCAからサーバ証明書発行CAの公開鍵まで全てを含むPEMファイル)


「秘密キーが不正」?そんなバカな!


「秘密鍵」の暗号化設定がされていると「秘密キーが不正」となるようだ
openssl rsa -in srv-key.pem -out srv-key-np.pem
でdes3暗号化を外したPEMファイルを一時的に作成し、インポート後に削除する事にした


サーバ証明書がインポートされた


「ds216j.m******」は、DS-216Jで作成したサーバ証明書
「DS216J.M******」は、インポートしたサーバ証明書
インポートしたサーバ証明書の「構成」で「サービス」「システムディフォルト」にインポートしたサーバ証明書を設定し、「編集」で「既定値としての証明書に設定します」にチェックを入れ、「説明」に「イントラネット用」のコメントを設定した。


サーバの再起動後、提示されるサーバ証明書を確認

インポートしたサーバ証明書を確認。
完了。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

プリウスPHV H2V manager iOS11に「やっと」対応

2018-02-10 10:00:00 | 
2017年9月20日iPhone iOS11 にアップデート以降、H2Vmanagerが起動出来なくなっていたH2V Managerのサポートサイトでは、2018年1月頃対応とのアナウンスがされていた。
アナウンスそのもが遅く、当初は、リンク先も切れていた(iOSアプリが警告を発してから6ヶ月間アナウンス無し。iOSが動作しなくなってから2ヶ月後にアナウンス。リンク切れ。サポートに電話してやっとリンク先が表示されるようになった)


リンク先の内容は、1月頃対応


1月中に何度かH2Vmanager(iOS11版)を立上げたが未対応。2月に入っても未対応。
PC版のH2V Managerのお知らせ機能に「お知らせ」も無く突然H2V Manager(iOS11対応)がリリースされた。


2018年2月9日にアップデートされたようだ




過去のデータも確認可能だが、


「車アイコン」をクリックすると「eConnect」が起動され、「PocketPHV」を起動することができない。

折角iOS11対応警告が出てから10ヶ月も余裕があったのだから、設定でどちらを起動するか選択設定が出来るようにすればよかったのに。。。。。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

Synology DS-216J WebStation update と/etc/nginxへの影響

2018-02-09 12:00:00 | DS-216J
Synology DS-216JのWebStationアップデートが表示された

DSMのアップデートでは、/etc/nginxに配置したファイルが削除された。WebStationのアップデートでは、どうなるのだろうか?
実施前に「nginx -T > test.txt」で設定ファイル内容をメモし、アップデートを実施した。

アップデート完了


「/etc/nginx」ディレクトリの内容を確認してみる

「/etc/nginx/nginx.conf」だけが変更されている。

リンク先も確認する

Basic認証用のディレクトリ及びファイルは、無事であった。
conf.dもsites-enabledも変更削除されていない。

「/etc/nginx/nginx.conf」の内容がどのように変更されたのか確認する
アップデート後、「nginx -T > test-2.txt」で設定ファイルを書き出し、アップデート前の「test.txt」と比較してみた。

php関係のソケット名が変更になっている。その他は、影響無いようだ。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする