ロケットネットでもベンチマークしてみた

何かロケットネットさんがキャンペーンで50GBのディスク容量にも関わらず年間1,000円キャンペーンをやってたので思わず釣られてみたw
いやいや、月額じゃなくて年額1,000円ですよ!これは事件です!

まぁ共用のレンタルサーバーということでVPSとも違うのであんまり自由度も無いけど、取りあえずデータのバックアップ用にでも使おうかと思って借りてみました。
念のため(というかこれが目的になってる節もありますがw)いつものようにPHPspeedをやってみたぜ!
ちなみにOSはCentOSっぽいです。

ちょっと前にやった[AWS] EC2マイクロインスタンスのベンチマークしてみたに追記する形でまとめます。

ベンチ結果

EC2 micro
EBS
EC2 small
instance-store
さくらVPS
512
ServersMan@VPS
Standard
ロケットネット
Synthetic
PHP BenchMark
3,267 1,262 2,507 1,693 3,794
Synthetic
MySQL BenchMark
13,748 5,234 11,072 5,168 6,005
Synthetic
Read/Write BenchMark
865 792 1,406 901 2,910
Real World
PHP BenchMark
2,639 1,320 4,659 3,090 4,493
Real World
PHP & MySQL BenchMark
838 994 2,179 1,287 2,054
Server BenchMark 1,415 969 2,548 1,300 2,838

正直なところ驚きました。
当然ながらVPSやら共用サーバーは当たり外れがあると思いますので、一概に断言はできませんがロケットネットのパフォーマンスはかなりスゴいです。
キャンペーン無しの値段でも初期費用1,575円、月額735円ということで一番安いため、大した性能は期待していませんでしたが、比較したやつの中ではトップクラスでした。後発有利とはいえこれは結構驚きです。
回線品質は確認してないですけどCDN的な使い方もアリかもしれないです。

おまけレベルですがsshも使えて、実際触っていても引っかかる感じが全くないのでアリだと思います。ただ、rsyncでバックアップしようと思ってたのにやっぱりrsync使えなかった(つーか初めに確認しろよオレw)ので若干ショックです><
chmodすら無くてftp経由でパーミッション変更しないといけないとかイミフw
まぁバックアップの方法は適当に考えることにしよう。

Railsも使えるっちゃ使えるみたいなのですが、いかんせんバージョンがかなり古いですねぇ。普通のホームページやらblogやらphp使ったサイトとかなら全然おkですが、ちょっと凝ったことをしようと思ったらやっぱちょっと厳しいですね。
(この辺りがPHPでサイト作る人が圧倒的に多い理由じゃ無いかといつも思う。)

まとめ

ロケットネットがオススメの人
・画像いっぱい動画もうpなホームページを作りたい人
・お手軽に独自ドメインでブログとかメールとかやってみたい人
 →ただ使い勝手的にhetemlロリポのがオススメw
・ちょっとWebアプリの作り方を勉強してみたいし、PHPだと捗るって聞いた人
・ターミナルの黒い画面が苦手なのでブラウザでイロイロ設定したい人

ロケットネットがオススメじゃない人
・容量とか別に無くてもいい人
・Railsってかなり捗るって聞いた人
・Google先生と仲良くなるにはPythonとDjangoだろって人
・サーバーをイロイロいじって勉強したい人
・735円出すのが惜しい人
 →つーか月額100円台からあるよね今。。。

ちなみに自分的にお気に入りというかオススメランキングはこんな感じ
EC2 > さくらのVPS > ロケットネット > ServersMan@VPS

ServersMan@VPSはベンチに現れていませんが、頻繁に反応が鈍くなります。ssh使っててもイライラするレベルw
今ServersMan@VPSで運用している業務アプリがあるのですが、今月末にちょっとメンテを入れるのでそのタイミングでEC2のTokyoに切り替える予定なくらいあまり気に入っていないw
まぁこの辺はOpenVZの仕様的なところも関係するのかもしれないですね。



まぁ、とりあえず一年1000円で使えるうちにから借りとけってことですw

Filed under: AWS,Internet,Linux — maesan 2:01 AM

格安SSL証明書導入の記録

SNIについてですがwww.maesan.jpの証明書でmaesan.jpも証明できるのでこの記事でSNI対応できてるというのは間違っていると思われます(コメント指摘ありがとうございます!)
この記事に書いてある無理矢理な方法ではなく、きちんと対応したバージョンのapacheを使ってください><


いままでSSLの証明書取得とか設定とか、レンタルサーバー側に任せっきりだったのでちょっと勉強がてら格安SSLの「エンジョイSSLダイレクト」って所を使ってmaesan.jpドメインをSSL化してみた。
何ていうか名前からしてアレな感じですが、値段は驚きの1,400円w そんな価格の証明書で大丈夫か?w

手順

サーバーのSSL化は以下の手順で行います。
1.CSRの作成
2.SSL証明書発行申し込み
3.サーバーのSSL設定

CSRの作成〜証明書発行申し込み

CSRってのは企業の社会的責任のアレじゃなくて、Certificate Signing Requestの略らしく、簡単にいうと公開鍵+サーバーの情報が含まれた謎の文字列のことです。

サーバーはDebian使ってますが、基本的な手順は一緒と思われます。

まずは秘密鍵の生成を行います。

#openssl genrsa -out maesan.jp.key 2048

秘密鍵とは公開鍵で暗号化されたものを復号化する鍵のことで、秘密鍵で暗号化されたものは公開鍵で復号化できるんだった気がしますが、それはRSAだけだったかよく分からなくなってきたので、詳しい説明は賢い人に聞いてください!

んで次にCSRの生成を行います。

#openssl req -new -key maesan.jp.key -out maesan.jp.csr
Country Name (2 letter code) [AU]:JP
State or Province Name (full name) [Some-State]:Kyoto
Locality Name (eg, city) []:Kyoto
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Maesan&Co.,Ltd.
Organizational Unit Name (eg, section) []:空白でおk
Common Name (eg, YOUR name) []:www.maesan.jp
Email Address []:空白でおk

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:空白でおk
An optional company name []:空白でおk

CSRはテキストで以下のような謎の文字列です
これを申し込みページにコピペすればおk

-----BEGIN CERTIFICATE REQUEST-----
MIICpDCCAYwCAQAwXzELMAkGA1UEBhMCSlAxDjAMBgNVBAgTBUt5b3RvMQ4wDAYD
VQQHEwVLeW90bzEYMBYGA1UEChQPTWFlc2FuJkNvLixMdGQuMRYwFAYDVQQDEw13
d3cubWFlc(◕‿‿◕)IIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnr0R
XAGjybsym3IjKWsCec3/Gea9rptRELwjA5LMRHftSLB47nD1d+WktU34jEyQ/8GQ
MFsSVjaBIAhU4EfnGサンプルだよA3pWBxcEe|\ ___ /|G+FeIZpi71HSa4
FxqQVurIL/qxEkCoy23L0+17Ee5KGSiUNKjKI/人◕‿‿◕人\byGoDHQsIh4bH
hG7BItU0uFVnN3+dzQdyn9tLL1XEIcOvfXY7G5G/EQaiKDLbyUJQo9FWpYjxtdLx
Div0tIhehpK/zzpryTBwu3AkU1n1tp2fOSy6W/hDUvt7IjA90BYlqsIalK8io0hF
t7o+smIpvkdmb+6AewIDAQABoAAwDQYJKoZIhvcNAQEFBQADggEBAELWERkrZDxB
b1xt5NRPrhFPf0rBX/+tFo( つ◕ω◕)つIKwm4ZuuspvUBfj+OMmYFfe3BE7lU2S
cS/gFT9iSIWmT2hqV5jX9Z5iYqg6kYf7fBUlmmkeZjMw8v3XqSeST8U+6On+hfzp
7DGaYUO∩(⊙∀⊙)∩wJnUn/6AvYuqmLb3n3lhUE+f5t8xZl1FGGo7HwBDinCa8L
Gwfg6gmVYNKQpEJGhIL62+PKaWrMvcU5XHa9yYRMv4t41MyJ4tSXSk+TeO1ViWp8
VynoKbMhyლ(❛o❛ლ)AtNz0fYU/ga2v2hX6g1r7u54KuaIht5CSml2abTeyETCF67
8wpc7VVFwbQ=
-----END CERTIFICATE REQUEST-----

ちなみに申し込みフォームで証明書送付先メールアドレスがroot@www.maesan.jpとかになっちゃって困ったのですが、取りあえずそれで進めて問題なかったです。

で、申し込み終わってPayPalで決済も終わったのに5分どころか一晩連絡無しw
いやいや、最短5分とか書いてあったしw
まぁ営業時間外っぽい時間だったし、色々と流れ的にテンポが悪いとこもあったので、きっと中の人が手作業で進めてるところがあるような気がするw

取りあえず翌朝にメールがきまして、トラッキングページから送付先のメールアドレスも変更して、RapidSSLからメールが届き、承認すれば証明書(中間CAも)がメールにて送付されてきました。

サーバーの設定

SSLの設定ですが、www.maesan.jpとmaesan.jpをVirtualHostで分けたいなと思いましたが、debianのaptのapacheは2.2.9でSNIに対応するのはapache2.2.12以降らしいのでダメっぽい。しかし、ダメ元でやってみるw

まずはmod_gnutlsをインストール

#apt-get install libapache2-mod-gnutls

で、mod_gnutlsの設定
/etc/apache2/ports.conf
mod_sslのとこをコメントアウトして以下を追記

<IfModule mod_gnutls.c>
Listen 443
NameVirtualHost *:443
SSLStrictSNIVHostCheck off
</IfModule>

バーチャルホストの設定
/etc/apache2/sites-available/www.maesan.jp-ssl

<VirtualHost _default_:443>
ServerName www.maesan.jp
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/maesan.jp.crt ←証明書
SSLCertificateKeyFile /etc/apache2/ssl/maesan.jp.key ←秘密鍵
SSLCACertificateFile /etc/apache2/ssl/maesan.jp.cacrt ←中間証明書
以下略
</VirtualHost>

/etc/apache2/sites-available/maesan.jp-ssl

<VirtualHost _default_:443>
ServerName maesan.jp
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/maesan.jp.crt ←証明書
SSLCertificateKeyFile /etc/apache2/ssl/maesan.jp.key ←秘密鍵
SSLCACertificateFile /etc/apache2/ssl/maesan.jp.cacrt ←中間証明書
以下略
</VirtualHost>

モジュールとサイトの有効化

#a2enmod gnutls
#a2dissite default-ssl
#a2ensite www.maesan.jp-ssl
#a2ensite maesan.jp-ssl
#/etc/init.d/apache2 restart

Syntax error on line 19 of /etc/apache2/ports.conf:
Invalid command ‘SSLStrictSNIVHostCheck’, perhaps misspelled or defined by a module not included in the server configuration
failed!

やっぱダメかw
SSLStrictSNIVHostCheckの行をコメントアウトして起動してみると動いた。

試しに https://maesan.jp/https://www.maesan.jp/ にアクセスしてみたらなんだかちゃんとVirtualHostで動いてるw
しかもWindows2000のIE6でも動いた!とりあえずおkとするw

まとめ

超格安のSSLですが、本当に大丈夫なのかと思いまして、古めの環境も含めてチェックしてみました。

おkだったもの
 Mac: Safari5.0.3, Firefox 3.6.14, Chrome 9.0.597.107, Opera 11.01
 Windows XP: IE8, Chrome 9.0.597.98, Firefox
 Windows 2000: Firefox 3.6.14, Opera 10.63
 iPhone

警告でたの
 Windows 2000: IE6

SNI(名前ベースのSSL VirtualHost)は全部いけた。というか本当に上の設定で正しいかどうかは不明なのであまり参考にしない方がイイかもw

VISTAと7が手元に無い+IE7を確認してないのでアレですが、とりあえずは使えるレベルなのではないでしょうか?
ただ、このブログのアクセス解析してもIE6が結構な割合でいるので(こんな技術系ブログでIE6のユーザーが多いのもどうかと思いますがw)、万人向けのネットショップとかだとためらってしまうかもしれないですね。XPのIE6で警告でなかったらおkかも知れませんね。

もし上記アドレスにアクセスして警告とか出る環境があればコメントかtweetしてもらえるとありがたいです!

身も蓋もないことをいうと、1,400円で簡単に証明できてしまうようなものなので自己署名のSSLとどれほどの違いがあるのかと思えてしまいますよねwww

追記:
 Windows XPでIE6の環境を作って試したら問題なくいけました。
 ついでにヨメの古いガラケーで試すとwww.maesan.jpはいけてmaesan.jpはムリだった。
 →正直コレはSNIの問題じゃないかと思ったり思わなかったり。。。

参考URL

エンジョイSSLダイレクト
Ubuntu で Apache 2.2 でマルチドメイン SSL を設定するには

Filed under: Internet,Linux,覚え書き — maesan 5:02 PM  Comments (2)

[MySQL + Linux] sonameでハマる

Python+MySQLdbでちょっとしたスクリプト書いてたんだけど、ローカルのMacではまともに動くのに、LinuxサーバーではSQLのsyntaxエラーが出ちゃいました。
はじめは全くわけが分からず、なんで怒られてるのかわからなかったのですが、どうやら原因はsonameってフィールド名を使ってたかららしい。

正直sonameって何やねん?って感じだったのですが、

Linuxのshared object呼び出したりする時の名前らしいね!
MySQL+Linuxではユーザー定義関数とか作る時にsonameって使うらしいね!
てかSQL書く時にフィールド名は`で囲めよオレ!

Filed under: Linux,MySQL,Programming — maesan 7:21 PM
 iTunes Store(Japan)
 iTunes Store(Japan)
 iTunes Store(Japan)
 iTunes Store(Japan)
 iTunes Store(Japan)