Posted on

無料SSL証明書「Let’s Encrypt」を試してみました。

暑くなってきました、年々暑くなるのが早くなってきてる気がします・・・温暖化でしょうね。

さて、以前からSSL証明書って高いな~(主にグローバルIP代ですが)と思っていて、去年からSNIベースのレンタルサーバーやIE6とかがお亡くなりになってくれたので安く設置できるようになって喜んでいたのですが、さらに最近無料のSSL証明書「Let’s Encrypt」っていうのが誰でも使えるとなったので試してみました。(オレオレ証明書は使いにくい場面多いので)

letsencryptインストール

cd /xxx
git clone https://github.com/letsencrypt/letsencrypt
/xxx/letsencrypt/letsencrypt-auto --help

SSL証明書作成 ※作成後httpd.confに設置

# /etc/letsencrypt/live/ドメイン名以下に証明書ファイル等ができます
/xxx/letsencrypt/letsencrypt-auto certonly --webroot -w [ドキュメントルート] -m [ドメインのメールアドレス] -d [ドメイン名] --agree-tos

証明書期限更新※90日しかないので1,2か月に1回下記cron実行

# 証明書更新&httpdに再設定
/usr/lib/letsencrypt/letsencrypt-auto renew --force-renew && /bin/systemctl reload httpd

csr作って申請、承認とか色々しなくていいので楽ですね~
Zenlogicさんが使いだしてますね。
これからほとんどのサイトがSSLになっていくんでしょうね。

Posted on

クーロンが動かない

クーロンが動かないで困っていませんでしょうか?
私は、crontab -eにてviを開き、下記内容を入力し保存しました。
0 8 * * 0  /usr/local/bin/weeklybackup > /dev/null 2>/dev/null[EOF]
時間になっても動作しません。
1時間程はまってしまいました。
原因は、[EOF]の位置にありました。
0 8 * * 0  /usr/local/bin/weeklybackup > /dev/null 2>/dev/null
[EOF]
とすると指定の時間に動作するようになりました。
Posted on

PHPでサーバーを監視するプログラムを作ってみました。

最近サーバーの調子が悪いので、サーバーにトラブルがあったら連絡くれるようにしてみました。

有料の監視ツールを使うほどでもないので、簡単に無料でできるか調べると、
アシアルさんでいいのを発見!これを使ってDBも監視するようにしました。
以下監視プログラムです。

続きを読む PHPでサーバーを監視するプログラムを作ってみました。

Posted on

phpコードの暗号化をする

今回phpコードを暗号化する方法を検討することになり、いろいろ試してみたので、その経過を記していきます。

まず最初にPOBSというプログラムが比較的簡単に導入できそうなので試してみました。
http://pobs.mywalhalla.net/からPOBSのダウンロードしてきます。
最新版のpobs099.zipをダウンロードして展開した出来たフォルダをphpが動作する区画にアップロードします。
後はブラウザから中に入っているpobs.phpを叩くだけで使えるということだったのですが、動かない!!
画面が崩れてコードの表示がむき出しになっている状態でした。
調べてみるとPHPを開始するところの記述が「<?」だけになっていました。
サーバーの設定にもよるのですが「<?php」で始めないと動かないようになります。
今回試した環境では動かなく原因を特定するのにハマリました・・・

無事に画面が表示されたので実際に実行してみます。
「Source Directory」に暗号化したいphpのあるパスを記述して、「Target Directory」に暗号化し終わったファイルを置くパスを指定します。
後は自由に設定が出来てクラス名・関数名・変数という具合に指定できます。
準備が出来たら「Start processing」を押すとどのファイルを変更したかと、変更前の記述と変更後の記述が表示されます。
それで「Target Directory」で指定したフォルダを見てみると、変換されたファイルが出来ていました。

感想:POBSはphpソースの暗号化というより可読性を落とすという感じで、今回捜し求めているphpの暗号化には当てはまらなそうです。ただ導入も簡単なので将来役に立つかも・・・

次に試してみたのがPHP_SCREWという暗号化ツールです。
導入と使い方は次のページを参考にしていきました。
http://www.pm9.com/newpm9/itbiz/php/phpscrew/ (本家)
http://tm.root-n.com/programming:php:etc:php_screw
基本的にLinuxにインストールしてコマンドでソースの暗号化をするというツールです。
コマンドで実行したら指定したファイルが暗号化されて、同じ場所に「元ファイル名+.screw」のファイルが出来ます。
後は「元ファイル名+.screw」のファイルを消せば暗号化の完成!!

感想:ソースの暗号化という分に関してはある程度望んでいる感じだった。しかし暗号化したPHPはインストールしたサーバーでしか動かないのでレンタルサーバーで動かすときやパッケージで提供するときには使えなさそう。

Posted on

VS.phpを使って、リモートデバッグしてみました!

リモートデバッグって必要あるの?って聞かれるといまいち説得力のある説明が
できないんですが、ローカル環境で開発していて、本番サーバで動かすと動きが
違って困り果てることってあります。そしてたいてい納期直前のかなり切羽詰っ
た時にそういうことが起こります。そんな時、リモートデバッグが使えると便利だっ
たりすると思うんです。
でも本番サーバにDBGやXdebugをインストールできなければこれは使えません。
以下、自分が実際に使ってみた時のメモです。
<苦労したところ>
を参考にDBGをインストールして設定したけれども、
  failed to establish connection to client host on localhost:7869
というメッセージが表示されて実行できない。サーバの設定によってこう
なることがあるようです。
property.JPG
PHPプロジェクトのプロパティ「構成プロパティ」「デバッグ」「高度な設定」の
DBGクライアントホストをローカルPCのIPアドレスにすると解決。
< リモートデバッグする時の手順 >
1.サーバからデバッグ対象のソース一式をローカルへコピーする
2.プロジェクトのプロパティで以下の設定をする

”配置”
  配置方法をFTPで設定する。
  パッシブモード/アクティブモードの設定を間違えないよう注意。
  下のFFFTPの画面で赤丸部分がONの時はパッシブモード)

FFFTP.JPG
“全般”
  デバッグモード:外部モード
  デバッグ方法:DBG
  開始URLはhttp://[IPアドレス]/test/index.phpのように。
”高度な設定”
  DBGクライアントのポート番号:7869
  DBGクライアントホスト:上の<苦労したところ>に書いた
  メセージが表示される場合はローカルマシンのIPアドレスする。

3.ソリューションエクスプローラでindex.phpの上で右クリックしてメニューから

  「開始ページに設定」を選択する

4.ブレークポイントをつけて、デバッグ実行する