ネット上のアクセスボリュームをUPさせ効率の良い集客をご提案します。

カテゴリー「Linux Tips」の記事

Let’s EncryptでSSL無料証明書を使ってみる

 / Linux Tips, Security Tips, テクニカル, トピックス, ノウハウ

世の中では7月24日のChrome68の驚異に向かってSSL化へ着実にサイトを切り替えるところが多くなっています。でもサイトを沢山持っているところはかなりのお金の負担になりますね。どうするんだろう?と思ってたらLet’s EncryptでSSL無料証明書が作れるんだね。でも3ヶ月更新のようです。

色々と今後このまま続くと思えないが当座は目下SSL化を目論んでいるGoogleにしてもこの証明書は短期的に見ればまともなサイトの救済策になるのであったほうが良い。長期的には排除か評価を低くするというシナリオは見えてくる。

使わないであれこれ言うよりは、まずは使ってみるというのは大事だね。ということで使ってみましたので、その備忘録を残したいと思います。


Let’s Encryptシステムのインストール方法

ドメインはtest.serve.netと仮定して必ずそのサイトが稼働しているサイトで作業を行う必然性があります。作業する際にそのドメインのドキュメントルート配下にもコマンド実行時に細工が入るらしいので必ず稼働しているドメインである必要があるのです。インストールする場所はどこでも良いのだけど外部ツールの導入は大体が/usr/localもしくは/optなので今回は/optで行ってみたいと思います。

ドキュメントルートに処理と認証を行い、対象ドメイン用の証明書群を作る。

証明書は/etc/letsencrypt/live/test.serve.netのフォルダーに作成されます。

※通常はcert.pem,chain.pem,privkey.pemがあれば十分。

WEBサーバの再起動を行う

以下を実施すればhttpsでアクセスが行なえます。

使ってみた感想

Let’s EncryptはPCだけではなくてスマホから使っても全く問題はなかった。短期的にはオールhttps化の回避策にはなるだろうと思うが、これはネットワーク機器用や実験用に使うべきと思います。恒久的に使ってはいけません。理由は認証が自動で所有者の正当な認証がされないSSL発行は危険だし、実際事件が起きているようなのでGoogleが恒久的には到底許すと思えない。ある程度の猶予期間や混沌とする検索エンジン世界の次のどうあるべきかが見えてきた段階で消滅するか限定的な使い方に変化するだろうと予測する。

ライセンス更新処理

放おって置くと3ヶ月でライセンスが止まるため、更新処理が定期的に必要です。更新が成功したらWEBサーバを再起動してください。

Python MySQLデータベース操作その2(更新、トランザクション) mysqlclientモジュール

 / Linux Tips, Python Bottle Framework, Security Tips, テクニカル, トピックス, ノウハウ

今回はアップデート処理を行いトランザクション処理としてロールバック機能等を入れてみる。ついでにSQLインジェクション対策のパラメータ挿入の仕方で記述します。パラメータの入れ方は多くの人がハマってしまうPython特有のぶら下がりカンマをあえて使います。入れる型に合わせて記述を考慮しなければいけませんがPython独特な書き方だと中々気づきにくいものです。他の言語では複数のリストやarrayを記述する場合は最後のパラメータの後方にはカンマを入れないのですがpythonは必要となるケースがありますのでご注意ください。


更新、トランザクション処理を入れたプログラム。SQLインジェクション対策の書き方にもなっている。

更新前と更新後を実行

CentOS7:SSL自己発行局の設置から俺々証明書の作成と承認まで

 / Linux Tips, Security Tips, テクニカル, トピックス

CentOS7で時々作成する自己発行局の作成から発行手順までを解説する。できるだけ簡単に完結にまとめようと思います。

一般的にスクリプトを使って生成するやり方もあるのですが、応用が効くのは素の手順で行うこちらの方法なので参考にしてください。openssl.cnfのファイルは/etc/pki/openssl.cnfの位置にありこれは場所やファイル名を変更しないほうが良いです。そのままにしたほうが簡単。自己発行局はオリジナルで/etc/pkiの配下に適当なフォルダーを作成してそこで作業を行います。別の場所に作業場所を作った場合も/etc/pkiにソフトリンクを貼っておけば問題なく発行が行なえます。


SSL証明書自己発行局構築(自己発行局の場所:/etc/pki/myCA)

最終的にca.crtとca.keyが生成されています。発行局とサーバ証明書は対になっているためDNS.xで指定したサーバ証明書用のドメインが変わる度に再作成とブラウザへのインストールが必要です。発行局自体にDNSのスコープ(利用範囲)があることを理解してください。

/etc/pki/tls/openssl.cnfのサンプルダウンロード

opensslのサンプルダウンロード

下記は標準の設定ファイルから修正した箇所です。追加や挿入する箇所です。参考にしてください。

SSLサーバ証明書発行依頼(CSRファイルの作成)

自己発行局へサーバ証明書の承認処理とSSLサーバ証明書の生成(server.crtの生成)

あとはWEBサーバに証明書を設置するのとca.crtを自分の使っているブラウザーへインポートしてください。

  • サーバ証明書 /etc/pki/myCA/server.crt
  • サーバ秘密鍵 /etc/pki/myCA/private/server.key
  • CAルート鍵 /etc/pki/myCA/ca.crt

備忘録:cakephp2.xでSSLした場合のトラブル「The request has been black-holed」の対処

 / Linux Tips, テクニカル, トピックス, ノウハウ

今年は7月からGoogle Chromeブラウザの非httpsなサイトをSSL化するための仕事で大忙し。 よくある問題は何かと言うと、表題の「The request has been black-holed」がcakephpで作られた環境でSSL化すると頻発するアクシデントに見舞われる。 この問題はよくある既知の問題なのでネット上にも対処方法はそこそこ見つけることができる。


しかし、人それぞれ、独特の作りかたをしているため、他人のソースコードを読み取って適材適所にコードを埋め込んだり修正するのは大変。 もう、cakephp絡みで今月に入ってから5件の案件で遭遇した。短い時間で修正すべきソースコードとその箇所を見つけるのはなかなかしんどい。

ということで、また遭遇するだろうからメモを残しておく。

対象Controllerを修正する

概ね以下のようなコードを挿入する。システムの作り方によるが修正箇所は大抵「app/Controller/」「app/Plugin/Admin」の下にあるメインコントローラか、機能単位のコントローラに入れることになるだろう。

cakephpのSSL化でインターナルサーバエラーの場合の回避策の一つapp/Config/core.phpの編集でエラーレベルを抑制

php.iniで既にエラーレベルが「E_ALL & ~E_DEPRECATED & ~E_STRICT」に設定されてれば問題ないが、サーバ上にある特定のアプリのみ制御するならcakephpであれば下記を修正します。

CentOS7 Grub2 カーネルの起動エントリーを減らし/bootの空き容量を確保。

 / Linux Tips, テクニカル, トピックス, ノウハウ

最近のLinuxはセキュリティ対策なためかupdateが盛んなため、直ぐにほっておくとカーネルの起動エントリーがGrubメニューにどんどん溜まってしまう。

といっても、調べてみるとデフォルトで5つまでアップデートエントリーが蓄積されそれ以上は増えないようだ。

このカーネルの蓄積に関するアップデートは/etc/yum.confのなかの「installonly_limit」を編集することで制限ができる。実際のところ3つまであれば十分だと思う


書き換え前

書き換え後

ついでに/boot配下の余計なカーネルを掃除

知らないうちにやはり圧迫されてた。/boot 95%はやばいでしょう。

お掃除は簡単package-cleanupで消去します。

再度確認してやっとディスク領域が65%に回復しました。インストールの時についついデフォルトで容量を小さくしすぎるのでアップデートが多いと圧迫されますね。でもこれを実行すれば問題ありません。

TOPへ戻る