Posted by at

2015年09月12日

KAGOYAクラウドVPSその2

インスタンスの作成・管理」を読むとカゴヤVPSの利用に際して以下の特徴があることがわかります。

1.利用するOS(ディストリビューション・パッケージ)は、Cent OS / debian / ubuntu から選択できます。

コントロールパネルの「インスタンス作成」をクリックして


使用したいパッケージを選択します。



(2015/09/08現在)もとちゃはOpenSimサーバーを立ち上げるためmonoのインストールが楽なubuntu,そして将来的にWebと連携させられるようにLAMPパック(ubuntu 14.04 64bit)を選びました。ここでは以下そのケースで説明します。(最小限のOpenSimサーバーの立ち上げならubuntu OSパックのなかのubuntu 14.04 64bitか32bitで十分でしょう)

2.カゴヤ・クラウド/VPS では、rootアカウントでSSH接続するときのログイン認証に公開鍵認証を使用します(公開鍵ログイン機能は、2014年11月12日より提供開始)。原理上は秘密鍵を持っているクライアントしかログインできなくなるため、ユーザー名とパスワードを使用した認証よりもセキュリティを高めることができます。インスタンスを作成、初期化するには、事前にログイン用認証キーを作成してください。

認証キーを作らないとたとえrootであってもリモートターミナルからログインすることができません。カゴヤはかなりセキュリティに神経質なようです^^;
前にあげたサポートサイトの説明を読めばじゅうぶんわかりますけど一応やりかたを書いておきます。

コントロールパネルの「ログイン用認証キー作成」をクリック


開いた画面で認証キーの名前を半角英数字で適当につけます。


キーを保存する場所を選びます。認証キーが見つからなくなると少なからず面倒なことになるのでくれぐれも慎重に! ^^; (デスクトップのフォルダーに入れておいて何かの間違いで削除,なんてことにならないように!)


たとえばTeraTermに秘密鍵を使ってログインしてみましょう。

まずふつうにサーバーのIPアドレスをいれてポート22で入ります。


ユーザー名をrootにしていままでならすぐその下にパスワードを入れるところですが,ここで「プレインテキストを使う」に入っているスイッチを「RSA/DSA/ECDSA鍵を使う」に切り換えます。「秘密鍵」のボタンを押すとフォルダのブラウザが開くので保存しておいた認証キーを選択して「開く」を押したあと「OK」です。



3.カゴヤ・クラウド/VPS では、セキュリティ対策のため、インスタンス作成時からiptabelsが設定されています。サーバーの用途に応じて必要な iptables の設定を追加してください。

初期設定でファイアーウォールが立ち上がっているのでセキュリティ上は安心です。しかしこのままではOpenSimサーバーを立ち上げることができないのでiptablesの設定でポートを新しく開かなければなりません。

この説明もサポートサイトの「オンラインマニュアル」→「セキュリティ設定」→「iptablesの設定」に詳しく書かれています。ただ内容がCentOS利用者むけのものなのでUbuntuを使っているわたしのような者にはちょっと不向きです。

で,Ubuntuでのiptablesの設定について書いておきます。
(Ubuntuならufwが使えそうですがわたしの使ってるパックではだめでした。独自にインストールすればいいのかもしれませんが以前の例(http://motocha.slmame.com/c84353.html)もありますので,ここでは確実にiptablesのほうの設定で説明します)

Ubuntuでiptablesの設定が書かれている書類は/etc/iptables.rulesです。
これを開くと

つまりSSHポートの22webポートの80だけが開いています。(LAMPパックの場合です。OSパックだったらSSHポートしか開いてないはずです)

OpenSimサーバーを立ち上げるためにはポート9000~(複数のリージョンを作るならその数だけ)を開かなければいけません。そこで下のようにファイルを書きかえます。
(ルートで)
vi /etc/iptables.rules
として


わたしはふたつのリージョンを作るつもりなので90009001を開きました。OpenSimサーバーの場合は各ポートごとにtcpudpを両方開かなければなりません。

さてiptablesの設定ファイルを書き換えましたが,これをファイアーウォールに読み込ませて反映させなければ意味がありません。

設定ファイルの読み込みはつぎのとおり(ルートで)
/sbin/iptables-restore < /etc/iptables.rules

iptablesの設定を確認するときはiptables -nvLです。



これでOpenSimサーバーのための準備ができました。


セキュリティについてのおまけ: (^^;)

root以外の一般ユーザーを作りましょう。

↓ このやり方はすでにご存じでしょうからここでは再度説明しません。
http://motocha.slmame.com/e1213417.html

ちなみにこの一般ユーザーはいままでどおりターミナルへのパスワードでのログインが可能です。
本当なら一般ユーザーを作ったあとは上のページでやったようにrootでのログインを禁止しておくほうがいいのでしょうが,KAGOYA/VPSの場合rootはパスワードでのログインができないのでまあ大丈夫かも知れません。

(追記:2015/09/16)
いずれにしてもrootでログインするのではなく,一般ユーザーでログインしてsuでrootになるか,もっといいのはその度にsudoを使って命令するようにするべきです。
(Ubuntuの場合,例えばユーザー名motokoでsudoが使えるようにするには次のようにします。)

# gpasswd -a motoko sudo


SSHポートを22から別の数字に変えましょう。

こちらは「さくら」や「DTI」でやったのと比べてちょっとやっかいです。
KAGOYA + Ubuntuの場合は/etc/ssh/sshd_configを書き直しただけではだめです。
まず/etc/iptables.rulesに新しく開くポート番号を追加してください。例えばポート50000を開くのだったら以下のようにです。

-A INPUT -m state --state NEW -m tcp -p tcp --dport 50000 -j ACCEPT

iptables.rulesを読み込みます。

# /sbin/iptables-restore < /etc/iptables.rules

そのあとでいよいよ/etc/ssh/sshd_configport 50000を書き加えます。
(念のためport 22はそのままにしておいてもいいでしょう。うまくべつのポートで接続できることを確認してからおもむろにコメントアウトすればいいのですから。)

sshをリスタートします。
注意するのは以前のページで説明したように…

# /etc/init.d/ssh restart
あるいは
# /etc/rc.d/init.d/sshd restart

ではだめなことです。

# service ssh restart

とやってください。



これでうまくリスタートするはずです。


  

Posted by もとちゃ at 08:35Comments(1)レンタルサーバー