A(master) —インターネット→ B(slave) —-イントラネット→ C(slave)
ってデータを更新したい。ややこしいと言うか出来るのかって話だけど出来るらしい
Master with Relay Slaveと言うらしい
んでせっかくならGTIDっていうのを使ってやろうって話
mysql_secure_installation
とりあえずやってみよう
SSLを入れるためにやったことです
買ったのはアルファSSLのワイルドカードドメイン
*.medicalfields.jpです
実際にやった設定
サーバーの秘密鍵作成(パスフレーズなし)
openssl genrsa -out server.key 2048
でサーバーの秘密鍵作ったら
CSR(Certificate Signing Request)を作成
openssl req -new -key server.key -out server.csr
ワイルドカードのドメインの場合はコモンネームを*.medicalfields.jpに
ほかはChallenge Passwordは入力しない!
んで出来たCSRをWEBのSSL発行サイトに貼り付けると
medicalfields.jp.crtっていうサーバ証明書ファイルを送ってくれる
これと中間証明書alphassl_intermediate_ca. cerがいる
yum –y install mod_ssl
vi /etc/httpd/conf.d/ssl.conf
中間証明書:alphassl_intermediate_ca.cer
サーバ証明書ファイル:medicalfields.jp.crt
サーバーの秘密鍵:medicalfields.jp.key
ができる
DocumentRoot “/var/www/html”
ServerName medicalfields.jp:443
のコメント外して付け加える
SSLCertificateFile /etc/pki/tls/certs/medicalfields.jp.crt
SSLCertificateKeyFile /etc/pki/tls/private/medicalfields.jp.key
SSLCertificateChainFile /etc/pki/tls/certs/alphassl_intermediate_ca.cer
保存
/etc/pki/tls/certsにcrtとcerの2つのファイル、/etc/pki/tls/private/にkeyを転送する
とりあえずCentOS7にWEBサーバー構築する
んでMariaDBは別サーバーにして、負荷を分散!って構造
ServerWEB1[Apache+PHP]
|
ローカルネットワークーク ー ServerSQL[MariaDB Slave]
|
ServerSQL[MariaDB Master]
っていう構造でいく
ロードバランサーは見送りです(そんなに負担かからないだろうし24コアまで1分ぐらいで拡張できるから)
ConohaでServerWEB1のサーバー作成
SSHでログイン
yum install httpd firewall-cmd --add-port=80/tcp --zone=public --permanent firewall-cmd --add-port=443/tcp --zone=public --permanent yum -y install php systemctl start httpd.service systemctl enable httpd.service
んでWordpressを
DocumentRoot “/var/www/html”
にコピー
すると
お使いのサーバーの PHP では WordPress に必要な MySQL 拡張を利用できないようです。
だと
yum -y install php-mysql
入れて
vi /etc/php.ini
に行って
extension=mysql.soの追加
systemctl restart httpd.service
で再起動したら動いてるはず
MariaDB
yum -y install mariadb mariadb-server
systemctl enable mariadb.service
systemctl start mariadb.service
firewall-cmd --add-port=3306/tcp --zone=public --permanent
mysql_secure_installation
でセキュリティ設定
とりあえずLocalからのみだけどそれだとアクセスできないから
mysql -u root -p
でSQLのコマンドの画面に入って
grant all privileges on *.* to name@'%' identified by 'password' with grant option
でAdminユーザー作った。これでWordpressログインします
なんやかんやでそのままduplicatorのinstall.phpで復元もすんなり出来た(フォルダのアクセス権を777にする必要はあったけど)
その後Wordpressのトップページ動いたーってなったけど他のページ行くとNot Foundと言われる。
でパーマリンクをデフォルトに戻すと表示される
実はhttpd.confの設定に不備があった。
<Directory “/var/www/html”> ~ </Directory>の中でAllowOverrideがNoneのままだった。
このため、.htaccessの設定が無効になっていたのだ。
そこで以下のように変更したら正常に表示されるようになった。
AllowOverride None
↓
AllowOverride All
<Directory “path/to/your/document/root”>
# ….
AllowOverride None
# ….
</Directory>
パーマリンクもできたしWordpress動いたーってなったけどプラグインの有効ページに行くと何故か真っ白になる
デバッグモード有効にすると
PHP Fatal error: Call to undefined function mb_convert_kana() in …
だって
解決方法
yum -y install php-mbstring
さらにjetPackを使うとエラー
Fatal error: Class ‘DOMDocument’ not found in
yum -y install php-xml
でOK
なんか調子悪そうならデバッグモード有効にすると原因がわかる
wp-config.php
に
define(‘WP_DEBUG’, true);を追加すると良い
conohaVPSだと簡単にSSH Keyで認証できるサーバーができる
+パブリックキーで
PuTTYで作った鍵(SSH2-RSA)の2048ビットでできた公開鍵
ssh-rsa AAAAArxOZqxJ7qmi/XxS/LsAdNpc3oJS2jafPM12tnyLryL1q2irCtnyLryL1q2irCqjNvhzCRV65rKHVhNs5qcc8vPWKRIl8TbakKz+fKxESMJ1X02CBuB6MCf+S3Q4zsiIwv7d3bO/ENDsDgGsTAedsdfejhDHnveoa0eDhekaBNATLWs6euDeWD7LKncdmrY15/+7DCp6UrWd/evqa+Mfp6xApCKQWP/dyzrVdhVUDrpf/cpiv0nlkMRvhY/Q== rsa-key-20170222
的なやつをImportしてConohaさんに登録
Conohaのサーバー管理でこの公開鍵でサーバーを新規作成します
また秘密鍵は大切に保管しましょう
key passphraseを登録するとより安全
ここで秘密鍵をppkで登録する
んでTeratermでUse RSA/DSA~~~~~to log inでさっきのPPKファイルを選択して、key passphraseを正しく入力するとログインできます
※ここのpassphraseはrootのログインのパスワードじゃないです!それだとログインできない、秘密鍵のパスワードです
ちなみにkey Psspharseが間違ってたら秘密鍵が正しくないみたいなエラーがでるけど秘密鍵のPPKファイルはきっと正しくてパスワード間違ってるだけだと思います
ConohaVPSでCentOS7.3でローカルネットワークを作ったのにお互いに接続されなかった原因
なんかIPアドレスは割り当てられたやつ
例:
利用可能アドレス | 192.168.11.1 – 192.168.11.254 |
---|
の場合で割り当てられたIPが
IPアドレス | 192.168.11.4 |
---|
だった場合
CentOS7だとnmtuiでGUIで操作するのがええよ!ってことでそれでやった
Edit a connectionで増えたやつ選択して(もし増やしたはずのMACアドレスのNICがなかったらActivate a conecctionしよう。Activate失敗してもなんか大丈夫そう)
/24が死ぬほど大事!
Gatewayに255.255.255.0と入力するとなぜか
PREFIX=32となります
それだと、つながりません
ip addr showで
brdが192.168.11.4となっちゃいます
自分で直接編集する場合は
# ディレクトリ移動
cd /etc/sysconfig/network-scripts
# 編集開始
vim ifcfg-eth1
でPREFIX=24にしましょう
あとEdit ConnectionでNever use this network for default routeはXにしてチェックいれましょう
そうしないとこのローカルネットワークでネットを繋ぎに行って、外部からSSHのログインできなくなります。
CentOS7.3でSoftEtherインストールのためにしたこと
softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gzをhttp://www.softether-download.com/ja.aspx?product=softether
からDLしてWINSCPで/rootに転送
yum -y install gcc
1. 解凍
tar xzf softether-vpnserver-v4.20-9608-rtm-2016.04.17-linux-x64-64bit.tar.gz
cd vpnserver
2. ビルドするため、make コマンドを実行する。
make
ライセンス同意書に同意するための処理が始まる。 まずは、1 を入力する。
Do you want to read the License Agreement for this software ?
1. Yes
2. No
Please choose one of above number:
1
再度、1 を入力する。
Did you read and understand the License Agreement ?
(If you couldn’t read above text, Please read ‘ReadMeFirst_License.txt’
file with any text editor.)
1. Yes
2. No
Please choose one of above number:
1
再々度、1 を入力する。
Did you agree the License Agreement ?
1. Agree
2. Do Not Agree
Please choose one of above number:
1
自動的にコンパイルが始まり、動作環境がチェックされる。すべて [合格] であれば OK。
3. vpnserver ディレクトリ丸ごと /usr/local/ に移動させ、パーミションを修正する。
cd ..
mv vpnserver /usr/local/
cd /usr/local/vpnserver/
chmod 600 *
chmod 700 vpncmd vpnserver
これで、インストール完了。
systemd用の起動スクリプトを作成します。ポイントは Type を「forking」にする事です。
# cd /etc/systemd/system
# vi vpnserver.service
[Unit] Description=SoftEther VPN Server After=network.target [Service] Type=forking ExecStart=/usr/local/vpnserver/vpnserver start ExecStop=/usr/local/vpnserver/vpnserver stop [Install] WantedBy = multi-user.target systemdがサービスを認識したか確認します。 # systemctl list-unit-files --type=service |grep vpn vpnserver.service disenabled systemdにサービスを登録し起動させます。 # systemctl enable vpnserver # systemctl start vpnserver
ポートを開放する
firewall-cmd –add-port=443/tcp –zone=public –permanent
firewall-cmd –add-port=443/udp –zone=public –permanent