YAMAHA RTX810

リモートアクセスVPN(Xperiaから自宅NATへの)接続をしたくてamazon.co.jp で色々と悩んだ末、YAMAHAのRTX810 ギガアクセスVPNルーターを選定しました。

DSC_0002

ポイントは、PPTPだけではなく、L2TP IpSec に対応、DDNS接続(IP固定じゃなくても)できる点でした。一応、GUI設定もできるとの触れ込みですがRTXシリーズは基本、telnetのコマンド操作らしいのでまずは、ひかり電話、ひかりTV、サーバーのファイアウォール関連の設定が出来たらいいですね。VPNはOpenVPNではなくあえて、筑波大学のフリーウェア SoftEther VPN Server を使ってみたいと思います。

DSC_0004

箱を開けてみると結構、大きいですね。

XperiaのSTAMINA(スタミナ)モード

グローバルモデルだからでしょうか。アップグレードがきてAndroid6.0にバージョンアップしたからでしょうか。原因はわかりませんがXperia z5で、[アプリ] → [設定] → [電源管理] → [STAMINAモード]の項目がありません。代わりに、[アプリ] → [電池使用量] → 右上の[:]アイコンタップ → [バッテリーセーバー]に、[ON][OFF]ボタンがありました。F1010107

「電池持ちを良くするために、バッテリーセーバーは機器の動作、バイブレーションを制御します。また、バックグラウンドでのデータ通信を制限するために、同期が発生するアプリはそれらを起動しないと更新されない可能性があります。バッテリーセーバーは、機器が充電されると自動的にOFFにされます。」

オプションとして、自動的に[使用しない][電池残量が5%時][電池残量が15%時]を選べるようになっていました。

Baidu IMEのアラート画像がユーモア10点

lIA7M

googleで画像検索したら面白いスクリーンショットを拾ったので保存しました。Baidu IME ってアンインストールすると本当にこの画面が現れるのでしょうか。さすがにネタじゃないかと・・・。萌絵のフィードバックオプションがユーモアの点で秀逸だったので気に入りました。

TeraTermカスタムショートカット

毎回、SSH接続するときにユーザー名を入力する手間に辟易していたところ、TeraTermの便利なショートカットカスタム方法がヒットしたのでシェアしますね。

Tera TermでSSH接続する際に、自動ログインするショートカットを作成 – サラリーマンから起業するリアル

ショートカットのプロパティを開いて、リンク先を下記のように設定します。

"C:¥Program Files¥teraterm¥ttermpro.exe"  対象サーバ:22  /ssh2  /auth=publickey /user=ログインユーザ名 /ask4passwd /keyfile="証書ファイルの絶対パス"

property_teraterm

 

VirtualBoxのホストもカスタムショートカットを作ればデスクトップからダブルクリックひとつでログインできて便利ですね。

VAIO Windows7をクリーンインストール

Windows10が7月にリリースされてはや、半年。いまさらですが、VAIOノートのOSをクリーンインストールしてみました。

幸い、SONY製のドライバーは、C:\Windows 直下にDrivers フォルダとして保存されていました。リムーバルメディアにコピーして、Windows7をDVDブート。

デバイスマネージャーから黄色マークのアイコンを右クリックして更新。DriversフォルダのINIファイルを指定。それから、DriversフォルダのEXEファイルを実行してインストール完了。

explorer

ドライバインストールが上手く行かず、3回くらいやり直しをしました。まず、HDD(SSD)は一旦本体から取り出して、外付けのUSBケースにつないでフォーマット。次にOSをインストールしたのちに、Driversフォルダごと、C:\Windows 直下にコピーしてからインストール。それから、IntelのRapid Storage Technologyは、インストール時にMicrosoftの.NET Flamework4が当たっていないとユーザーアカウント制御のダイアログが出てダメでしたので、Windows Update後にインストールするのが良いようです。

WindowsUpdateの更新が208項目。Office2010、メールバックアップ、セキュリティソフトのインストールをしても、使用領域40Gバイトとスッキリしました。

1TバイトのポータブルHDDバックアップしてあった、.Virtualbox Virtualbox VMs フォルダをユーザーアカウントフォルダ直下に戻して、VirtualBoxのイメージも復元しました。ここまでで、60Gバイト。SSDなのでシステムの復元は無効にしています。バックアップしなきゃ。(使命感)

VirtualBoxでCentOS7にApache2.4をインストール

前回のエントリーOpenSSL バージョンアップ からの続きです。

今回は、「CentOS7にApache2.4をインストール」です。

環境としてはテストとしてVirtualBoxに、Centos7.1をBase.repoでminimalインストールしてからを前提として始めます。参考にしたのは以下のサイトです。

Apache2.4系をソースからインストール – Qiita

作業ディレクトリは、/usr/local/src です。

必要なパッケージをyumでまとめてインストール
# yum -y install gcc gcc-c++ git wget tar m4 autoconf libtool zlib zlib-devel
# yum -y install httpd-devel libxml2-devel mysql-devel t1lib-devel openssl-devel
# yum -y install bzip2-devel curl-devel gmp-devel aspell-devel recode-devel
PCREのインストール
# wget http://sourceforge.net/projects/pcre/files/pcre/8.37/pcre-8.37.tar.gz
# tar zxvf pcre-8.37.tar.gz
# mkdir /usr/local/pcre
# cd pcre-8.3.7
# ./configure --prefix=/usr/local/pcre
# make && make install
aprのインストール
# wget http://ftp.meisei-u.ac.jp/mirror/apache/dist//apr/apr-1.5.2.tar.gz
# tar zxvf apr-1.5.2.tar.gz
# mkdir /usr/local/apr
# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr
# make && make install

apr-iconvの展開
# wget https://www.apache.org/dist/apr/apr-iconv-1.2.1.tar.gz
# tar zxvf apr-iconv-1.2.1.tar.gz

apr-utilのインストール
# wget http://ftp.meisei-u.ac.jp/mirror/apache/dist//apr/apr-util-1.5.4.tar.gz
# tar apr-util-1.5.4.tar.gz
# mkdir /usr/local/apr-util
# cd apr-util-1.5.4
# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=../apr-iconv-1.2.1
# make && make install

ポイントは、APR-Utilのconfigureの際に、APRをインストールしたディレクトリ名を- -with-apr=/[aprディレクトリパス] オプションで指定することです。

同じく、APR-Utilのconfigureの際に、apr-iconvを追加コンパイルするときには、- -with-apr-iconv=/[apr解凍ディレクトリ] と指定してあげて下さい。(apr-iconvは解凍するだけでmakeしなくても良い。)

libiconvは日本語patchが必要らしく、以下のサイトを参考にしました。

libiconv 1.13インストール手順 – Knowlege Database

# wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.tar.gz
# wget http://www2d.biglobe.ne.jp/~msyk/software/libiconv/libiconv-1.13-ja-1.patch.gz
# tar xfvz libiconv-1.13.tar.gz
# cd libiconv-1.13
# yum install patch
# gzip -dc ../libiconv-1.13-ja-1.patch.gz | patch -p1
./configure
# make && make install

※ apache起動時にlibiconv のエラーを回避する方法を拾ったのでメモです。
ライブラリのパスを通す http://fisherman23.blog112.fc2.com/blog-entry-140.html

# vi /etc/ld.so.conf
/usr/local/lib  ←これを追加し、保存
# ldconfig  (実行)

やっと、Apache本体のインストールです。(httpd-2.4.18 2016年1月21日現在最新版.)

# wget http://ftp.meisei-u.ac.jp/mirror/apache/dist//httpd/httpd-2.4.18.tar.gz
# tar zxvf httpd-2.4.18
# cd httpd-2.4.18
# ./configure --enable-suexec --prefix=/usr/local/apache2 --enable-cache --enable-disk-cache --enable-mem-cache --enable-logio --enable-header --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-pcre=/usr/local/pcre --enable-ssl --with-ssl=/usr/local/ssl --enable-rewrite --enable-so --enable-proxy --enable-mods-shared=all
# make && make install

VirtualBoxでは関係ありませんが、Apacheのリクエスト並列処理オプションとして –enable-mpms-shared を本番環境では設定すると良いそうです。

httpd設定ファイル編集は、Webサーバー構築(Apache) – CentOSで自宅サーバー構築 を参考にしました。

# vi /usr/local/apache2/conf/httpd.conf
Group apache
User apache
ServerName www.southerncross.net
<Directory "/usr/local/apache2/htdocs">
AllowOverride All
・・・

起動確認の前に、firewalldの80番ポート解放です。

# firewall-cmd --add-service=http --zone=public --permanent
# firewall-cmd --reload

CentOS7では、ホスト名の管理は/etc/hostnameの編集だけで済むようになりました。

# vi /etc/hostname
www.southerncross.net

VirtualBoxで[設定]→[ネットワーク]→[アダプター1]→[ポートフォワーディング]から、ゲストの80番をポートフォワーディングして

portfowording

本番環境では宅内ルーターのファイアウォール80番ポートの解放、さらにサーバーのプライベートIPアドレスを固定して、[静的アドレス変換]などの設定項目からTCPのhttp80番を指定してポートフォワーディングします。

一方、今回はVirtualBoxでホスト機のブラウザでアドレス名でアクセスするとのことですので、C:\Windows\System32/Dirvers\etc のhostファイルの編集が必要です。

# ip addr show

で表示されたプライベートIPをメモ帳で直接hostファイルを編集します。例えば、

192.168.56.101    www.southerncross.net

とします。Base.repoで入っているhttpdの起動を停止。

# systemctl disable httpd
# systemctl stop httpd

OS起動で自動起動させるには、起動スクリプトをコピーして、

# cp -ip /usr/local/src/httpd-2.4.18/build/rpm/httpd.init /etc/rc.d/init.d/apache2
 設定ファイルを以下のように書き換えます。参考:URL
2015年末 最新LAMP環境 Apache HTTP/2+PHP7+MySQL5.7 インストールメモ | あぱーブログ
# vi /etc/rc.d/init.d/apache2
[修正内容]
httpd=${HTTPD-/usr/sbin/httpd}
 pidfile=${PIDFILE-/var/run/${prog}.pid}
 lockfile=${LOCKFILE-/var/lock/subsys/${prog}}
 ↓
 httpd=${HTTPD-/usr/local/apache2/bin/httpd}
 pidfile=${PIDFILE-/usr/local/apache2/logs/${prog}.pid}
 lockfile=${LOCKFILE-/usr/local/apache2/logs/${prog}}
  
 CONFFILE=/etc/httpd/conf/httpd.conf
 ↓
 CONFFILE=/usr/local/apache2/conf/httpd.conf 
 [ここまで]

chkconfig に登録、Apache2を起動します。

# chkconfig --add apache2
# chkconfig apache2 on
# /usr/local/apahce2/bin/apachectl start

ブラウザから、http://www.southerncross.net/ を入力して [It works!] と表示されれば成功です。It works! だけでは味気ないなと思ったら、ちょっと遊んで

# cp /usr/share/httpd/noindex/index.html /usr/local/apache2/htdocs/index.html
# cp -r /usr/share/httpd/noindex/css /usr/local/apache2/htdocs/css
# cp -r /usr/share/httpd/noindex/images /usr/local/apache2/htdocs/images
# chown -R apache. /usr/local/apache2/htdocs/

すると、Apache2.4 テストページが表示されます。お疲れ様でした。

test123

WordPress の更新エラー「要求されたリクエストを完了できる http トランスポートがありません」

WordPress 4.3.1 にバージョンアップされてから、プラグインのダウンロード先がhttps をサポートするようになったからでしょうか。更新エラーがでます。Google 検索をすると、curl openssl モジュールを有効にすると良いらしい。この1か月、いろいろ悩みましたが、PHPのリビルドをすることにしました。下記を参考にphp.ini を更新。

PHP5.4以降をソースビルド(apache2,mysqli対応) – Qiita

curlを組み込むために以下のサイトを参考に、インストール。

PHP用にcURLをインストール、設定する | 渋谷生活

PHPリビルドの呪文を唱えます。

# service apache stop
# cd /usr/local/src/php-5.6.14
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --includedir=/usr/include --with-config-file-path=/usr/local/lib --with-config-file-scan-dir=/etc/php.d --bindir=/usr/bin --sbindir=/usr/sbin --with-openssl=/usr/local/ssl --with-mysql --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir=/usr --with-gd=shared --with-zlib --with-curl --with-xsl --enable-gd-native-ttf --with-gettext --with-libxml-dir=/usr/bin/xml2-config --enable-mbstring
# make && make install

途中 configure error が出たので、yum install libjpeg-devel freetype-devel libxslt-devel で追加のパッケージをインストール。無事、プラグインの更新に成功しました。

ポイントは、–with-curl –with-openssl オプションを付けたことです。

(Apache は、/usr/loccl/apache2/にインストールして以下サイトを参考に自動起動のシェルを作成。PHPインストール前にstopコマンドで停止する。) apache2.2 起動と自動起動設定

wordpress/ は、リビルド作業前にバックアップを![ダッシュボード] → [ツール] → [エクスポート] からファイルに保存。画像ディレクトリ、wordpress/wp-content/uploads/を保存。

プロセス別のメモリ消費量

余りにもメモリ使用量が激しいのでプロセス別にメモリ使用量を調べてみました。

プロセス毎のメモリ使用量を調べるコマンド – Hack Your Design!

$ ps alx  | awk '{printf ("%d\t%s\n", $8,$13)}' | sort -nr | head -10

memory_usage

318020  clamd
45264   /usr/bin/Xorg
31116   nautilus
28188   /usr/libexec/mysqld

clam AntiVirus が占有していました。cat /proc/meminfo で Inactive を調べてみると

meminfo

[root@stuffy ~]# cat /proc/meminfo
MemTotal:       12163576 kB
MemFree:         6102576 kB
Buffers:          220288 kB
Cached:          4599248 kB
SwapCached:            0 kB
Active:          2204440 kB
Inactive:        3308920 kB
Active(anon):     694044 kB
Inactive(anon):     4068 kB
Active(file):    1510396 kB
Inactive(file):  3304852 kB

3Gバイト。MemFree と合わせて9Gバイトなので、MRTG やfree コマンドで6Gバイトと表示されるのはMemFree のことなのですね。

SELinux によるWordPress のパーミッション設定

メディアライブラリへの画像追加
 wordpress アップロード中「この親ディレクトリのアクセス権はサーバーによる書き込みを許可していますか。」とエラーが出る。
プラグインのインストール
 ある時突然、プラグインのインストールをしようとして「ディレクトリを作成できませんでした。」とプラグインのインストールに失敗。
google で検索しても「パーミッションが悪い」「.htaccess を見直してみたら?」と言われいろいろ設定をいじっても解決しなかったので途方に暮れた

経験はありませんか。

httpdのドキュメントルートが通常とは違う場合、もしかしたら、SELinux のアップデートでポリシーが変わって書き込みが出来なくなったのかもしれません。

誤)# semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/wordpress/wp-admin/uploads (/.*)?"

誤)# restorecon -R "/var/www/html/wordpress/wp-admin/uploads"

正)# semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/wordpress/wp-content/uploads (/.*)?"

正)# restorecon -R "/var/www/html/wordpress/wp-content/uploads"
(uploads/ の他に、plugins/ themes/ ディレクトリも同様に設定が必要かもしれません

パーミッション、.htaccess、所有権のチェックでも問題がない場合、疑うべき選択候補ではあると思います。↓

CentOS7のSELinuxが有効な状態でhttpdからファイルに書き込みを行う設定

Linux Kernel バージョンアップ

yum の更新でLinux カーネルが、2.6.32-573.8.1.el6.x86_64 にバージョンアップされました。Wordpress のフォントも微妙に変わっていますね。

バージョンアップといえば話は変わりますが、Kaspersky を2013から2015にバージョンアップしたところ、一部のweb サイトが表示できなくなりました。2015からの追加機能でweb トラッキング防止機能が原因でした。詳しく調べてみると、[プロテクション] → [web トラッキング防止] → [カテゴリと信頼リスト] → [web ビーコンを使用した情報の収集をブロック] にチェックを入れているとニュースサイトのフィードがブロックされるようでした。

webbecon