タグ別アーカイブ: お名前.com VPS

old_passwordsの罠

 お名前.com VPS(KVM)に新サイトを展開していて、MySQLで作ったユーザがログインできない状態が発生した。

 MySQLはデフォルトリポジトリから導入して、設定ファイルは特別な記述をせず展開。
 CREATE USER文でユーザを作って、パスワードも設定。
 これでできあがったユーザでログインしようとすると失敗する。 Host値を書き換えてみたりするがダメ。

 何だろうな-、と思って、mysql.userテーブルを眺めてみると、既存ユーザのpasswordは16桁で、新しいユーザは41桁だった。
 16桁って言うのはMySQL4.1以前のハッシュ値で、4.1からは標準が41桁になっている(先頭に、旧ハッシュと新ハッシュを識別するための*記号が付与されていて、実際は40桁)
 mysql cliでSELECT PASSWORD(‘hoge’);してみると、41桁が帰ってくる。 でも、41桁ハッシュのアカウントは全てアクセス不能で16桁の物だけアクセスできる。

 試しにmy.cnfのmysqldセクションで、old_passwords=0を明示的に指定してrestartしてみると、41桁ハッシュのアカウントでログイン可能&16桁ハッシュのアカウントでもログイン可能となった。
 試しにold_passwords=1を明示的に指定すると・・・41桁ハッシュでも16桁ハッシュでもログイン可能であった。

・・・あれ?
 old_passwordsを明示的に指定してやらない場合、16桁ハッシュのアカウントしか認証できず、0でも1でも指定してやればどちらでも認証できる。 と言う、変な結果(不定値の条件バグだね)
 じゃあ、old_passwords値は無視されているのかというとそんなこともなく、
・0の場合はPASSWORD関数が生成するハッシュが41桁になる
・1の場合はPASSWORD関数が生成するハッシュが16桁になる
と言う動きをしていた。

 作成したユーザで認証できない場合、設定ファイルのold_passwords値をチェックしてみると良いと言うメモ。

(436)


カテゴリー: MySQL | タグ: , | コメントをどうぞ

お名前.com VPS(KVM)でWindows Server 2012の評価を開始、RTX1100との間にメインモードIPSecでVPNを設定した – WindowsServer2012

 そんなわけで期待していたWindows Server 2012の評価版公開されたので、先日のつぶやき通りさくらVPSを1本解約して新規に契約したお名前.com VPS(KVM)に導入して評価することにした。
 で、今回の導入環境は、お名前.com VPS(KVM) 2GBプラン。
 お名前.com環境はWindows化は超容易で、さくらのVPSのように面倒なことをする必要はない。

1,MSのサイトからWindowsServer2012評価版のISOイメージをダウンロードしてくる
2,お名前のコントロールパネルでSSL鍵をダウンロード、サーバ設定画面でVirtioをOffに設定しておく
3,ダウンロードした鍵を認証に使ってSFTP接続してISOをアップロード(Filezillaとかで)
4,お名前のコンソール上にアップロードしたISOが登場するから選択して再起動
5,普通のPCと同じようにインストーラが立ち上がってくるから、普通にインストールしておしまい。

 ネットワークは1000MTレミュレートだから標準ドライバだし、他のデバイスも何も気にすることはない。
 IPアドレスなんかもDHCPで払い出されるから本当にデフォルトで良い。
 完了後にお名前コンソールで管理用リモートデスクトップの設定を入れてやれば、後は普通にリモートデスクトップで快適操作。

 とりあえず、先日導入したRTX1100とIPSecを設定する。
 しかし、従来通りローカルセキュリティポリシーのIPセキュリティの設定からポリシーを設定して割り当てを行ったが全然始動しない・・・
2008(R2も)はいけたんだけど、何かGPOの構成とか必要なのかな・・・? とりあえず、2008以降推奨手段であるセキュリティが強化されたWindowsファイアウォール(WFAS)にある機能で設定した。
WFASのIPSecは殆ど触ったことがないのでつまずいたが、最終的には設定項目にPFSが無いけど、PFS必須だったと言う点だけだった。
RTX1100のIPSec周りの設定

tunnel select 10
tunnel name “WS2012Eval”
ipsec tunnel 10
ipsec sa policy 10 10 esp aes-cbc sha-hmac
ipsec ike always-on 10 on
ipsec ike encryption 10 aes-cbc
ipsec ike group 10 modp1024
ipsec ike hash 10 sha
ipsec ike keepalive use 10 off
ipsec ike local address 10 RTXの内側IP
ipsec ike payload type 10 3
ipsec ike pfs 10 on
ipsec ike pre-shared-key 10 text 事前共有鍵
ipsec ike remote address 10 VPSのグローバルIP
ipsec auto refresh 10 on
ip tunnel tcp mss limit auto
tunnel enable 10

ip routeとかフィルタは以前の記事と同じ

WFASでのIPSec設定

試験企画:GUI操作は動画説明してみるテスト(動画中では試験用にDES/MD5を選択している)
操作ステップ1
操作ステップ2

1,’コントロールパネル’から’Windowsファイアウォール’を開き、左リストにある’詳細設定’を開く
2,左リストの、’ローカルコンピューターのセキュリティが強化されたWindowsファイアウォール’を右クリックして、’プロパティ’を開く
3,’IPSecの設定’タブを開いて’IPSec既定’の’カスタマイズ’を開く
4,’キー交換(メインモード)’を’詳細設定’ラジオボタンを選択して、’カスタマイズ’を開く
5,’セキュリティメソッド’の’追加’を開いて、’整合性アルゴリズム’で’SHA-1’を選択、’暗号化アルゴリズム’で’AES-CBC 128’を選択、’キー交換アルゴリズム’で’Diffie-Hellman Group 2’を選択してOKで閉じる
6,追加された項目を選択して、右側にある上下矢印で追加したメソッドを一番上にしてOKで閉じる
7,4番の画面で’データ保護(クイックモード)’も’詳細設定’ラジオボタンを選択して、こちらの’カスタマイズ’を開く
8,’この設定を使用するすべての接続セキュリティ規則に暗号化を要求する’をチェック、’データの整合性と暗号化’の’追加’を開く
9,’プロトコル’で’ESP’ラジオボタンを選択、’アルゴリズム’の’暗号化アルゴリズム’で’AES-CBC 128’を選択、’整合性アルゴリズム’で’SHA-1’を選択してOKで閉じる
10,追加された項目を選択して、右側にある上下矢印で追加したメソッドを一番上にしてOKで閉じる
11,’認証方法’も’詳細設定’ラジオボタンを選択し、’カスタマイズ’を開く
12,’1番目の認証’の’追加’を開く
13,’事前共有キー’ラジオボタンを選択し、テキストボックスにRTXに設定した’事前共有鍵’を入力してOKで閉じる
14,追加された項目を選択して、右側にある上下矢印で追加したメソッドを一番上にしてOKで閉じる。
 ’IPSecの規定値のカスタマイズ’画面もOKで閉じる。
 ’ローカルコンピューターのセキュリティが強化されたWindow・・・’(切れてる・・・)の画面もOKで閉じる。
 これで1の画面まで戻ってきたはず。
15,左リストの’接続セキュリティの規則’を右クリックして’新しい規則’を開く
16,ステップ’規則の種類’で’カスタム’を選択して次へ
17,ステップ’エンドポイント’で、’エンドポイント1にあるコンピュータを指定してください’は’任意のIPアドレス’を選択。
 ’エンドポイント2にあるコンピュータを指定してください’は’これらのIPアドレス’を選択し、’追加’を開く。
 ’このIPアドレスまたはサブネット’を選択し、テキストボックスにRTX内側ネットワークを入力(192.168.10.1/24とか)してOKで閉じて、次へ
19,ステップ’要件’で’受信接続と送信接続に対して認証を要求する’を選択して次へ
20,ステップ’認証方法’で’既定’を選択して次へ(詳細設定で12/13/14同様の設定をしても良い)
21,ステップ’プロトコルおよびポート’で、’プロトコルの種類’で’任意’を選択して次へ
22,ステップ’プロファイル’で、’ドメイン’・’プライベート’・’パブリック’をチェックして次へ
23.’名前’に適当な名前を設定(必須項目)して、’完了’
24,作成された規則を右クリックして、’プロパティ’を開く
25,’全般’タブの’有効’をチェック、’詳細設定’タブの’IPsecトンネリング’の’カスタマイズ’を開く
26,’IPsecトンネリングを使用する’をチェック、’リモートトンネルエンドポイント’の’編集’を開く
27,’特定のアドレス’を選択して、’IPv4’テキストボックスにRTXの外側固定IPを入力してOKで閉じて、OKで閉じて、OKで閉じる(接続名のプロパティまで閉じる)

 長かったけど、コレで完了。

 お名前.com VPS(KVM)からフレッツ光ネクスト回線+固定IPプロバイダで接続したRTX1100経由でLAN上のWindowsHomeServer2011なProliant ML110 G7との間でWindowsファイル共有のコピーで、4.5MB/s(36Mbps位)が実効レートだった。 このスピードならかなり快適に作業できるだろう(下手なUSBメモリ程度だ)

 と言うわけで、LANのサブネットにWindowsファイル共有を開けて、インターネット上のファイルサーバに仕立ててみた。
 外からでも使えるように、VPN(RRAS)も構成してL2TP/IPSecで入れるようにして、仮想ネットワークからもファイル共有を開けるようにした。
 しかし、WFASのポリシーを何度かいじっているといきなり消えることがあるようだ。 やはり出たばかりでまだまだ安定に難があるかもしれない。

(84)


カテゴリー: Windows VPS, サーバ設定 | タグ: , , , , , | コメントをどうぞ

お名前.com VPSと物理サーバ(Proliant ML350/Xeon E5506)のベンチを比較してみた

 普通の物理サーバと比較してみる為にベンチを取ってみた。
 ML350(Xeon E5506x1, 12GB RAM, SAS 10000rpm HDD)

========================================================================
BYTE UNIX Benchmarks (Version 5.1.3)

System: ml350.local: GNU/Linux
OS: GNU/Linux — 2.6.18-194.17.1.el5 — #1 SMP Wed Sep 29 12:50:31 EDT 2010
Machine: x86_64 (x86_64)
Language: en_US.utf8 (charmap=”UTF-8″, collate=”UTF-8″)
CPU 0: Intel(R) Xeon(R) CPU E5506 @ 2.13GHz (4264.7 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 1: Intel(R) Xeon(R) CPU E5506 @ 2.13GHz (4264.8 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 2: Intel(R) Xeon(R) CPU E5506 @ 2.13GHz (4264.5 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
CPU 3: Intel(R) Xeon(R) CPU E5506 @ 2.13GHz (4264.6 bogomips)
Hyper-Threading, x86-64, MMX, Physical Address Ext, SYSENTER/SYSEXIT, SYSCALL/SYSRET, Intel virtualization
12:09:58 up 3 days, 2:08, 4 users, load average: 1.20, 0.94, 0.68; runlevel

————————————————————————
Benchmark Run: 木 6月 21 2012 12:09:58 – 12:37:56
4 CPUs in system; running 1 parallel copy of tests

Dhrystone 2 using register variables 12209665.4 lps (10.0 s, 7 samples)
Double-Precision Whetstone 2426.1 MWIPS (9.8 s, 7 samples)
Execl Throughput 4007.8 lps (29.9 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 486551.5 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 142487.1 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1155556.7 KBps (30.0 s, 2 samples)
Pipe Throughput 928752.1 lps (10.0 s, 7 samples)
Pipe-based Context Switching 270718.7 lps (10.0 s, 7 samples)
Process Creation 11906.2 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 6160.0 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 2213.6 lpm (60.0 s, 2 samples)
System Call Overhead 751282.6 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 12209665.4 1046.2
Double-Precision Whetstone 55.0 2426.1 441.1
Execl Throughput 43.0 4007.8 932.0
File Copy 1024 bufsize 2000 maxblocks 3960.0 486551.5 1228.7
File Copy 256 bufsize 500 maxblocks 1655.0 142487.1 860.9
File Copy 4096 bufsize 8000 maxblocks 5800.0 1155556.7 1992.3
Pipe Throughput 12440.0 928752.1 746.6
Pipe-based Context Switching 4000.0 270718.7 676.8
Process Creation 126.0 11906.2 944.9
Shell Scripts (1 concurrent) 42.4 6160.0 1452.8
Shell Scripts (8 concurrent) 6.0 2213.6 3689.4
System Call Overhead 15000.0 751282.6 500.9
========
System Benchmarks Index Score 1012.6

————————————————————————
Benchmark Run: 木 6月 21 2012 12:37:56 – 13:06:09
4 CPUs in system; running 4 parallel copies of tests

Dhrystone 2 using register variables 47698281.2 lps (10.0 s, 7 samples)
Double-Precision Whetstone 9706.0 MWIPS (9.9 s, 7 samples)
Execl Throughput 15605.2 lps (29.8 s, 2 samples)
File Copy 1024 bufsize 2000 maxblocks 350054.4 KBps (30.0 s, 2 samples)
File Copy 256 bufsize 500 maxblocks 105229.8 KBps (30.0 s, 2 samples)
File Copy 4096 bufsize 8000 maxblocks 1028767.1 KBps (30.0 s, 2 samples)
Pipe Throughput 3623665.5 lps (10.0 s, 7 samples)
Pipe-based Context Switching 1243005.6 lps (10.0 s, 7 samples)
Process Creation 47556.5 lps (30.0 s, 2 samples)
Shell Scripts (1 concurrent) 22027.5 lpm (60.0 s, 2 samples)
Shell Scripts (8 concurrent) 3062.2 lpm (60.0 s, 2 samples)
System Call Overhead 2917520.5 lps (10.0 s, 7 samples)

System Benchmarks Index Values BASELINE RESULT INDEX
Dhrystone 2 using register variables 116700.0 47698281.2 4087.3
Double-Precision Whetstone 55.0 9706.0 1764.7
Execl Throughput 43.0 15605.2 3629.1
File Copy 1024 bufsize 2000 maxblocks 3960.0 350054.4 884.0
File Copy 256 bufsize 500 maxblocks 1655.0 105229.8 635.8
File Copy 4096 bufsize 8000 maxblocks 5800.0 1028767.1 1773.7
Pipe Throughput 12440.0 3623665.5 2912.9
Pipe-based Context Switching 4000.0 1243005.6 3107.5
Process Creation 126.0 47556.5 3774.3
Shell Scripts (1 concurrent) 42.4 22027.5 5195.2
Shell Scripts (8 concurrent) 6.0 3062.2 5103.6
System Call Overhead 15000.0 2917520.5 1945.0
========
System Benchmarks Index Score 2446.5

お名前.com VPS 2GBの3パラレルとML350の4パラレルのベンチの比較

 比の数字が大きいほどお名前のインデックスが高い。
 あれ・・・専用サーバよりもCPU周りの結果が良い。 そして、いつも思っているとおり、ディスク周りが遅くて、物理サーバの半分以下になっている。
 ディスク周りが改善されればパフォーマンス的な不満はほぼ無くなりそうだ。

(35)


カテゴリー: レビュー | タグ: , , | コメントをどうぞ

以前の記事で書いた、さくらVPSでKNOPPIXを動かす記事のおまけ

 以前、KNOPPIXさくらのVPS(virtio_blk)上で動作するようにする記事を書いたけど、今回、仕事関係で複数のVPSサーバーをまとめて設定する必要が生じた為、KNOPPIX利用のイメージングをて行った。
 せっかくminirt.gzを作成したので、基本設定状態で差し替えればいいminirt.gzイメージを置いておく。

Virtio起動対応KNOPPIX用Bootイメージこのファイルをminirt.gzとして配置してやれば、KNOPPIXがVirtio起動デバイスなお名前VPSさくらVPSで動作するようになる。

  1. KNOPPIXを入手する(最新CD版を利用した)
  2. DaemonTools or WinRARを入手する
  3. KNOPPIXのISOイメージをDaemonToolsでマウントするかWinRARで開く。
    CDの/KNOPPIXをVPSの/KNOPPIXとしてコピーする。
    CDの/boot/isolinuxの中身をVPSの/boot/KNOPPIXにコピーする。
    ついでに、上に置いてあったknoppix_virtio.gzファイルで/boot/KNOPPIX/minirt.gzを置き換える。
  4. VPSのGRUB設定を追加する。
    VPSの/boot/grub/menu.lstに追記して、KNOPPIXを起動できる様にする(最下行に追記)

    title KNOPPIX
    root (hd0,1)
    kernel (hd0,0)/KNOPPIX/linux ramdisk_size=100000 init=/etc/init ro
    initrd (hd0,0)/KNOPPIX/minirt.gz

     デフォルトインストールのさくらVPSだと、hd0,0が/bootで、hd0,1が/なので、ルート配下の/KNOPPIXにアクセスする場合はhd0,1である。 なお、kernelとinitrdでは/boot/KNOPPIXに配置したファイルを使いたいので、hd0,0である。

  5. システムを再起動して、直ちにVNCコンソールを開く。
    GRUBのスタート画面でカーソルキーか何か押すと選択画面が開く。 この時、先ほど追記したKNOPPIXがあるので、選んでEnter。
    KNOPPIXが起動する。
  6. (8)


カテゴリー: サーバ設定 | タグ: , , , , | コメントをどうぞ

お名前.comのVPSとRTX1000の間にOpenswanを使ってIPSec方式のVPNを設定した

 Windows化したさくらVPSサーバー固定IPプロバイダでつないだRTX1000の間にアグレッシブモードメインモードIPSecを張っていたわけだけど、今回はCentOS 6環境のお名前.com VPS(KVM)サーバーとの間にメインモードのIPSec VPNの設定を行った。

 IPSecはオープンな規格であるものの、独自実装が多くて、なかなか相互互換が得られない困ったちゃん。
 特にLinuxのIPSec実装には色々なソフトがあって、つながる組み合わせ、つながらない組み合わせが難しい。
 今回使ったLinuxのIPSec実装であるOpenswanは、CentOS標準パッケージなのでメジャー系ではあるものの、あまり普及しているとはいえず、ネット上で情報収集してもL2TPと組み合わせてスマホを接続するような情報ばかりで、最終的にソースコードを眺めつつ、設定を詰めるのに1週間以上かかってしまったが、何とか構築することが出来たのでメモしておく。

RTX1000の設定

ip route VPSのグローバルIPアドレス gateway tunnel 1 filter 1001 1002 1999

ip filter 1001 reject * * udp * 500
ip filter 1002 reject * * esp
ip filter 1999 pass * *

tunnel select 1
tunnel name VPN2VPS
ipsec tunnel 1
ipsec sa policy 1 1 esp 3des-cbc sha-hmac
ipsec ike always-on 1 on
ipsec ike encryption 1 3des-cbc
ipsec ike esp-encapsulation 1 off
ipsec ike group 1 modp1024
ipsec ike hash 1 sha
ipsec ike local address 1 192.168.0.1
ipsec ike local id 1 192.168.0.1
ipsec ike payload type 1 3
ipsec ike pfs 1 on
ipsec ike pre-shared-key 1 text 秘密だよ
ipsec ike remote address 1 固定IPだよ
ipsec auto refresh 1 on
ip tunnel tcp mss limit auto
tunnel enable 1

3des-sha1の組み合わせで、ESP有効、MODP1024設定でPFS有効のポリシー(軽いdes-md5を試みたが、yumパッケージ版ではdesはサポートされておらずビルドし直さなければならない)

Openswanの導入は、CentOS標準のyumからの導入でOK(yum install openswan)

Openswanの設定
/etc/ipsec.conf

 auto=startだと起動時に接続にいく。 addにすると、コマンドラインから ipsec auto –up homenetwork のようにコマンドを打つことでリンクアップできる。
 今回は認証がsecret(事前共有鍵)なので、/etc/ipsec.secretsに
: PSK “事前共有鍵”
 のように記述しておく。
 電子証明書認証も出来る。

 VPN接続がうまくいくと、LAN側のPCで”traceroute VPSサーバーの固定IP”とか実行すると、デフォルトゲートウェイVPSサーバーのIPの順で表示される(VPNが無いと、デフォルトゲートウェイ対向ルータインターネットVPSサーバーのIPというように、中間のアドレスが表示される=トンネルモードVPNだと仮想的に1ホップになる)
VPSサーバー側でnetstatを実行すると、VPNで繋がっていないとルータの外側IPが表示されるが、繋がっているとLAN内部のIPがそのまま表示されることでも確認できる。

 VPNを設定しておくと、VPSサーバーからsambaを経由してLAN上のWindowsマシンの共有ストレージを利用したり、LAN上のマシンからPOP3接続したりしたときに、VPSサーバー<=>ルーター間の情報はすべて暗号化されるためセキュアで良い。

参考
参考
RTXのIPSec設定参考
新しいRTXだとこんな事も出来る

(246)


カテゴリー: サーバ設定 | タグ: , , , , , | 1件のコメント