色々でべろっぷ

WordPress、サーバー構築、プログラム等のメモ

Bitbucket(Git)にプッシュまで

あらかじめBitbucketにリモートリポジトリ作成しておく

初期設定
http://code.google.com/p/tortoisegit/
から
Gitクライアント「TortoiseGit」入手
日本語表示にするランゲージパックも入手
インストール
設定そのままでインストール
終わったら
ランゲージパックインストール

デスクトップの適当なところで右クリックメニューを表示
Gitのメニュー項目が追加されているで
「TortoiseGit」 > 「Settings」 をクリック
General」の画面の「Language」で日本語を選択してから「OK」

新しいリポジトリを作成
開発コード入ったディレクトリ右クリック
Gitここにリポジトリを作成」をクリック
Bareを生成にはチェックをせずにOKボタン

コミット
ディレクトリを開いて、フォルダ内を右クリックして右クリックメニューを表示
その右クリックメニューからGitコミットをクリック
「変更した項目」で変更したファイル群を選択し、「メッセージ」にコミットメッセージを入力してから「OK」ボタンをクリック

リモートリポジトリにプッシュ
ディレクトリを右クリックして、「プッシュ」をクリック
管理ボタンをクリック

「リモート」に「origin」
「URL」にBitbucketで作成したリモートリポジトリのURLを入力して「新規に追加/保存」ボタンをクリック
例)https://miruaho@bitbucket.org/miruaho/resonance_patchclient.git

プッシュの画面のリモートの項目で先ほど追加したoriginを選択し、「OK」ボタンをクリック
ユーザ名の入力を求められるので、Bitbucketのユーザ名を入力
パスワードry

ResonanceWeb SSL証明書インストール

あらかじめ受信メール用アカウントつくっておくこと

KingSSLからのメール受信用(名前が決まってるから)に設定変更
例)admin@rez-players.com とかでメールが受信できるよう設定
メール変更はここ参考



サーバ内での事前準備
秘密鍵を生成する

まずはVPSサーバ内で秘密鍵というものを作る
Apache の設定ファイルのパスに移動
cd /etc/httpd/conf/

秘密鍵CSR、証明書などを格納するディレクトリを作る
mkdir ssl.key
mkdir ssl.csr
mkdir ssl.crt

秘密鍵を生成する
(新規ではなく更新の場合は既存のファイルを上書きをしないように注意!)
openssl genrsa -des3 -out ./ssl.key/rez-players.com.2016.key 2048
パスワードを入力*2
例)パス:passpass16

CSRを生成する
CSRとは、ドメイン所有者が認証局に提出する署名リクエスト
./ssl.key/rez-players.com.2016.key という秘密鍵から、./ssl.csr/rez-players.com.2016.scr というCSRファイルを作る

openssl req -new -key ./ssl.key/rez-players.com.2016.key -out ./ssl.csr/rez-players.com.2016.csr
Country Name 国を示す2文字のISO略語を入力。 JP
State or Province Name 組織が置かれている都道府県を入力。 Hokkaido
Locality Name 組織が置かれている市区町村を入力。 Sapporo-shi
Organization Name 組織の名称を入力。 Resonance Gamez Corp.
Organization Unit Name 組織での部署名。 指定がない場合はハイフン ?
Common Name ウェブサーバのFQDNを入力。
King SSL で購入する場合、「www」付きを指定しておくと、「www」有りと無しの両方に対応できるので「www」付きが吉。 www.rez-players.com
Email Addres 入力不要。 ?
A challenge password 入力不要。 ?
An optional company name 入力不要。 ?

★生成されたCSRファイルの内容を開いてコピー
CSRは破線の行も含めて全てコピーする必要があり

vi /etc/httpd/conf/ssl.csr/rez-players.com.2016.csr
にペースト

https://www.kingssl.com/ の申し込み
CSRのとこに
↑のCSRをペースト
下段の「乗り換え元証明書」は空白のままでOK

内容を確認して問題が無ければさらに次に

証明書を取得するには、ドメイン所有者の承諾が必要なので、ドメイン所有者宛に承認の手続きに関するメールが届くのだが、
リストの中からドメイン所有者のメールアドレスを選択する。
※あらかじめメール用アカウントつくっておくこと(例admin@rez-players.com)

クレジットカード情報を入力し、内容を確認したら申込完了

ドメイン所有者宛(admin@rez-players.com)に「KingSSL/承認手続きのお知らせ」というメールが届くので、本文に書かれたURLにアクセスして承認ボタンを押す。

しばらくすると申込者の元へ「[KingSSL]サーバ証明書発行のお知らせ」というメールが届く
メールの本文には、「証明書」と「中間証明書」と「証明書+中間証明書」が記載されている
以下で「証明書」と「中間証明書」をサーバにインストールしていく


証明書をサーバに保存する
Apache の設定ファイルのパスに移動
cd /etc/httpd/conf/

ファイル新規作成
vi /etc/httpd/conf/ssl.crt/rez-players.com.2016.crt
メールの本文から証明書をコピーして、作成したファイルに張り付けて保存
:wq

ファイル新規作成
vi /etc/httpd/conf/ssl.crt/intermediate_sha256_G2.cer
メールの本文から中間証明書をコピーして、作成したファイルに張り付けて保存

Apacheの設定ファイルを書き換える
/etc/httpd/conf.d/ssl.conf がないのでmod_sslをインストール
yum -y install mod_ssl
ApacheSSL設定ファイルを編集
vi /etc/httpd/conf.d/ssl.conf

以下最後に追加
# offに設定(SNIに未対応のブラウザ用)
SSLStrictSNIVHostCheck off
# 名前ベースのバーチャルホストを使用できるように宣言
NameVirtualHost *:443
他にも設定項目あったかも・・・・

ApacheSSL設定ファイルを編集
vi /etc/httpd/conf.d/ssl.conf
DocumentRoot "/var/www/html" # コメントをはずす
ServerName rez-players.com:443 # コメントをはずす
# サーバー証明書のパスを指定
SSLCertificateFile /etc/httpd/conf/ssl.crt/rez-players.com.2016.crt
# サーバー秘密鍵のパスを指定
SSLCertificateKeyFile /etc/httpd/conf/ssl.key/rez-players.com.2016.key
最後に追加
# offに設定(SNIに未対応のブラウザ用)
SSLStrictSNIVHostCheck off
:wq

apacheを再起動
/etc/init.d/httpd restart


SSL証明書パスフレーズを後から解除する場合、これしないとapache再起動のたびにパス入力することになる
cd /etc/httpd/conf/
cd ssl.key
cp rez-players.com.2016.key rez-players.com.2016.key.org
openssl rsa -in rez-players.com.2016.key -out rez-players.com.2016.key
パスワード入力
例)passpass16

ブラウザのキャッシュをクリアして強制再読み込み

Internet Explorer
Ctrlを押しながら更新ボタンをクリック

Google Chrome
Ctrlを押しながら更新ボタンをクリック

Firefox
Shiftを押しながら更新ボタンをクリック

Safari
Shiftを押しながら更新ボタンをクリック

Opera
Ctrlを押しながらF5 キー

WordPressのアップロードサイズを上げる(.htaccess)

.htaccess

# BEGIN WordPress~# END WordPressの間は触れない
WordPressが上書きするする場所

下記追加
php_value upload_max_filesize 10M
php_value post_max_size 10M

DocumentRootディレクトリ以下の設定修正(Apache)

/var/www/html以下
所有者apache
グループapache
に変更する
chown -R apache:apache /var/www/html

/var/www/html以下
所有者rwx
グループrwx
その他r-x
に変更する
chmod -R 775 /var/www/html

apacheグループに追加
gpasswd -a hoge apache
(gpasswd -a USER GROUP  グループにユーザー追加)

確認
groups hoge
(groupsコマンド  ユーザーが所属してるグループ一覧表示)

WordPressのセキュリティ対策(HTACCESS)

HTACCESSを使ってWP-CONFIG.PHPへのアクセスを制限する。
ルートディレクトリ直下の.htaccessに下記をコードを追加する

内容はorder(命令)でdeny(否定)する。
deny(否定) all(すべて)
となる

下記コードはセキュリティ上重要なテキストが入っているwp-config.phpを直接参照させないようにする事でセキュリティを高める方法
WordPressを利用している場合は、#BEGIN WordPress ~ #END WordPress に囲まれている部分以外に記載することで、自動的な上書きを防ぐことができる

# protect wp-config.php
Options -Indexes
<files wp-config.php>
order allow,deny
deny from all
</files>

htaacessの編集が終えたら必ずパーミッションは400や404などに戻しておく
chmod 404 /~/blog/.htaccess

WordPressのセキュリティ対策(SALT)

認証キーをwordpress.orgの秘密鍵生成サービスを使って変更する

wordpressにはwp-config.phpという設定を書き込むファイルがあるが、
このファイル内には秘密鍵が含まれている。
デフォルトだとすべてが同じキーになっていますので、
念のためwordpress.orgのAPIを使ってすべてのキーをユニークな物に変更する。

秘密鍵を表示させてwp-config.phpの所定の場所にコピペする
WordPress.org の秘密鍵サービス
https://api.wordpress.org/secret-key/1.1/salt/

テキストが表示されるのですべてコピー

wp-config.phpに上書き貼付け 保存する。場所は認証用ユニークキーの下あたり
wp-config.phpのアクセス権を400(8進数表記)か元のアクセス権に戻す
chown -R apache.apache /~/blog/wp-config.php
chmod 400 /~/blog/wp-config.php

アクセス権を戻し忘れるとコピペした8行の秘密鍵が漏洩する事があるので注意

WordPressでAkismetの設定

Akismetとはコメントやトラックバックの内容をサーバーでチェックしてくれるスパム対策サービス
WordPressのダッシュボードにログインし、プラグイン(インストール済みプラグイン)を選択し、Akismetの有効化をクリック

APIキーを取得をクリック
AkismetのAPIキー入手ページが出る
Get an Akismet API keyと書かれた青いボタンをクリック
APIキーはメールで送られてくるので、正しいメールアドレスを入力
次の画面で画面右上付近にあるつまみを左に動かしたら$0.00/yr になり、無料で使うことが出来る
全て完了したらCONTINUEをクリック
先ほど登録したメールアドレスにメールが届いている
が、この段階でブログ設定のAkismetキー入力欄にセットされてるので、更新クリック
メールにもキー書いてある

※取得したAPIキーは、そのユーザーが管理する別のサイトでも利用することが可能
WordPressを立ち上げるごとにAkismetのAPIに登録といった面倒な作業は不要
同じAPIキーを設定画面で使用できる

WordPressでWP Multibyte Patch有効化しておく

日本語版ワードプレスにデフォルトでインストールされているプラグインで、WordPressをマルチバイト文字に最適化してくれる
日本語版のWordPressを運営する場合、このプラグインは必ず有効化しておく必要あり