COMODOのSSL証明書をApacheに設定する方法

COMODOの証明書を購入した後の設定が複雑だったので、まとめました。
購入手順についてはSSL購入サイトを見れば分かると思うので割愛します。

■環境
CentOS 7.1.1503
httpd 2.4.6-31.el7.centos.1
mod_ssl 1:2.4.6-31.el7.centos.1
openssl 1:1.0.1e-42.el7.9

■必要なもの
証明書購入時に作成した秘密鍵(yourdomain_com.keyとする)
証明書購入後にメールで送られてきた証明書たち
・yourdomain_com.crt
・COMODORSADomainValidationSecureServerCA.crt
・COMODORSAAddTrustCA.crt
・AddTrustExternalCARoot.crt

まず、上記必要なもの全てを設定するサーバにアップロードしておきます。
場所はどこでも良いのですが、本例では「/etc/pki/comodo/」配下に格納したとします。

そして、メールで送られてきた証明書のうち自分のドメイン名がファイル名に入っていない3つを連結します。
連結は以下のコマンドで実施できます。連結する順番は以下順を守ってください。
なお、連結後のファイル名(以下例ではyourdomain_com.ca_bundle)は任意です。

# cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt AddTrustExternalCARoot.crt > yourdomain_com.ca_bundle

ApacheのSSL設定ファイルを編集し、以下の行を修正します。
(/etc/httpd/conf.d/ssl.conf)

SSLCertificateFile /etc/pki/comodo/yourdomain_com.crt
SSLCertificateKeyFile /etc/pki/comodo/yourdomain_com.key
SSLCertificateChainFile /etc/pki/comodo/yourdomain_com.ca_bundle

Apacheの設定を再読み込みします。

# systemctl reload httpd

これでSSLの設定が反映されるはずです。
もし駄目だったら、Apacheの再起動をしてみてください。

# systemctl restart httpd
Share

CentOS7のsshd設定(セキュリティ)

サーバへのsshログインについて、以下の設定をします
・sshポートの変更
・ルート権限でのログインを無効化
・ルート権限にsuできるアカウントの制限

■環境
CentOS 7.1.1503
Openssh 6.6.1

以下の設定でポート番号変更とルート権限ログインの無効化を実施します
以下の行を修正(なければ追加)してください

(/etc/ssh/sshd_config)

Port 1234 ※任意の番号
PermitRootLogin no

「wheel」グループのアカウントを作成します

# useradd testuser ※任意のアカウント(既存のアカウントを使うなら不要)
# usermod -g wheel -G wheel testuser

以下の設定でルート権限にsuできるグループを「wheel」に限定します
以下の行を修正(なければ追加)してください

(/etc/pam.d/su)

auth required pam_wheel.so use_uid

以上で設定は完了ですが、設定をしたターミナルを閉じる前に新規ターミナルを立ち上げて
上記wheelグループに設定したアカウントにてsshログイン&suが出来ることを確認してください。
確認前に設定したターミナルを閉じてしまうと、設定に失敗していた場合に最悪だとルート権限になれなくなります。

Share

PHPで文字化けが直らない場合の対処

■環境
CentOS 6.6
Apache2.2

日本語が文字化けするのでphpのソースで以下の記載をしていました。

setlocale(LC_ALL, ‘ja_JP.UTF-8’);

これでも文字化けが直っていたので良いのですが、
この対応方法だと同サーバにてアプリケーションを作成する度に記載が必要です。
なので、デフォルトで「ja_JP.UTF-8」を設定しました。

①sysconfigで設定する方法
/etc/sysconfig/httpdで以下の設定をすれば直りました。

#HTTPD_LANG=C
HTTPD_LANG=ja_JP.UTF-8

②php.iniで設定する方法
/etc/php.iniで以下の設定をすれば良いという記事を見ました。
私の環境では以下の設定をしても文字化けは解消しなかったのですが、念のため載せておきます。

;intl.default_locale =
intl.default_locale =ja_JP.UTF-8
Share

phpcon 2015 スライドまとめ

phpcon 2015のプログラムのスライドをまとめました。
見つけられたものだけをまとめていますので、もしここにないスライドの情報があればコメント頂けるとありがたいです。
間違いがあったらごめんなさい

■午前の部■
PHPの今とこれから 2015(廣川 類) http://www.slideshare.net/hirokawa/php2015-53467590
今時のSQLインジェクションの話題総まとめ(徳丸 浩) http://www.slideshare.net/ockeghem/phpcon2015
Performance Testing for Moderm Apps(Dustin Whittle) https://speakerdeck.com/dustinwhittle/performance-testing-modern-apps
※日付が古いので、実際に投影されたものとは多少差があるかもしれません
Composerではじめるアプリケーション開発(岸田 健一郎) https://speakerdeck.com/sizuhiko/composerdehazimeruapurikesiyonkai-fa
こわくないSymfony2 – 業務で使って気づいた7つの良いところ(中西 豪) https://speakerdeck.com/gomachan/kowakunaisymfony2-ye-wu-deshi-tuteqi-duita7tufalseliang-itokoro
PHP初心者セッション(柏岡 秀男) 〜見つからず〜
クラウドから地上まで。Azureがどうやって動いているのか、掘ってみよう(畠山 大有) 〜見つからず〜
From PHP to Machine Code(Juozas Kaziukenas) https://speakerdeck.com/juokaz/from-php-to-machine-code-phpcon-japan-2015
超高速WordPress〜PHP7 vs HHVM vs PHP5.6(中村 けん牛) http://www.prime-strategy.co.jp/resource/pdf/PHP2015Tokyo.pdf
OWASPよりPHPプログラマに贈るセキュリティ実装虎の巻(仲田 翔一) https://speakerdeck.com/owaspjapan/owaspyoriphppuroguramanizeng-rusekiyuriteishi-zhuang-hu-falsejuan
PHPの基本クイズ — この動き、あなたは知っていますか?(寺田 渉) http://slides.com/wataruterada/php-quiz#/
Visual Studio Code(戸倉 彩) http://www.slideshare.net/ayatokura/visual-studio-code-phpcon2015
■午後の部■
基調講演(Rasmus Lerdorf) http://talks.php.net/tokyo15#/
MySQL 5.7にやられないために知っておいてほしいこと(yuko0825) http://www.slideshare.net/yoku0825/mysql-57-53449734
Hack言語に賭けたチームの話(大谷 祐司) http://www.slideshare.net/yujiotani16/hack-53487378
Inside CyberAgent’s Game Developer(白井 英、川村 猛) http://www.slideshare.net/sge-engineer/inside-cyberagents-game-development
Electronからクロスプラットフォーム・アプリケーションの歴史を考える(秋山 顕治) https://speakerdeck.com/artifactsauce/electronkarakurosupuratutohuomuapurikesiyonfalseli-shi-wokao-eru
徳丸先生に怒られない、動的SQLの安全な組み立て方(Makoto Kuwata) http://www.slideshare.net/kwatch/sql-53624630
フリマアプリ「メルカリ」の急成長を支えるエンジニアリング(久保 達彦) https://speakerdeck.com/cubicdaiya/hurimaapuri-merukari-falseji-cheng-chang-wozhi-eruenziniaringu
国内 No.1ECオープンソースを作り直す時、何がおきたのか。EC-CUBE3開発秘話(足立 智広) 〜見つからず〜
Behat Driven Development(富所 亮) http://www.slideshare.net/RyoTomidokoro/behat-driven-development
いまどきのPHP開発現場−2015年秋−(新原 雅司) http://www.slideshare.net/shin1x1/php-2015-53486408
Database Theory Models and Abstractions(Eugene Cook) https://speakerdeck.com/etcook/phpcon-japan-2015-2015-10-03-database-theory-models-and-abstractions#
DMMのハイパーメディアオタサーの姫arimoが語るPhalcon(arimo) https://speakerdeck.com/arimo/dmmfalsehaiha-meteiaotasafalseji-arimokayu-ru-phalcon
営業・運用を支える 気付ける 管理画面(前田 雅央) http://www.slideshare.net/brtriver/ss-53483240
PHPマニュアルの育て方(高木 正弘) http://www.slideshare.net/m.takagi/php-53571819
モダンなアーキテクチャのPHPベース OSS CMS Drupal8(長谷川 智希) http://www.slideshare.net/hasegawatomoki/drupal-8-phposs-cms
PHPデプロイツールの世界(竹澤 有貴) http://www.slideshare.net/yuukitakezawa/php-53515989
脆弱性もバグ、だからテストしよう!(市川@cakephper) http://www.slideshare.net/ichikaway/php2015-53484885
PHPあるあるパフォーマンス対決(蒋池東龍) 〜見つからず〜
How to Build Efficient and Integrated Development Environment for The Team(Sotaro Karasawa) https://speakerdeck.com/sotarok/how-to-build-efficient-and-integrated-development-environment-for-the-team
10年続いているWebサービスの画像サーバをノーメンテでFTPサーバからS3互換のストレージサーバに移行している話(河野 匡貴) http://www.slideshare.net/masatakakono1/10webftps3
WebRTC開発者向けプラットフォーム「SkyWay」の裏側(仲 祐介) http://www.slideshare.net/yusukenaka52/webrtc-skyway
■LT■
PHPer女子が語る 2015!こんなコードを書くヒトはモテない〜コラボ編〜(深澤 ひかり) http://www.slideshare.net/hico00/phper2015php2015-phpcon2015
ランダムデータをPHPで作る(岸田 健一郎) https://speakerdeck.com/sizuhiko/randamudetawophpdezuo-ru?slide=2
PHPでRubyのゲームを攻略する PHPWarrior(マスクドPHP) 〜見つからず〜
良心的にまじめに開発するための心構え(村上 俊介) 〜見つからず〜
PHPでDIをする(大橋 勇希) http://www.slideshare.net/OhasiYuki/phpdi-53487642?utm_source=slideshow&utm_medium=ssemail&utm_campaign=post_upload_view_cta
サンタクロースを支えるIT技術 チャリティーサンタ(石川 将行) http://www.slideshare.net/mishikawa55/it-mishikawa-yapcasia
phpと夫婦生活(竹澤 有貴) 〜見つからず〜
(あなたにもできるかもしれない)ローカルPHPカンファレンスの作り方(赤瀬剛) 〜見つからず〜
THE NEW “PERFECT PHP” WILL BE COMING SOON(小川 雄大) https://speakerdeck.com/fivestar/the-new-perfect-php-will-be-coming-soon
小説執筆の現場で活躍するPHP(yusuketsuiki) http://www.slideshare.net/yusuketsuiki/php-53505570
蚊にさされないためのPHP(青木 啓剛) 〜見つからず〜
ISUCON2015 PHPで予選を戦ってみた(後藤 健) http://www.slideshare.net/kengotoh/isucon2015-php
Share