【ConoHa】ConohaのVPSサーバーを借りて、使えるようにする話。
ConoHaでサーバーを借りて、GMOD専用サーバーにする話です。
今回借りるのは、ConoHa VPS、OSはRising Worldで学習済みのCent OSを予定しています。
なお、自分メモなので、わかりづらい部分あると思いますので、不明点はコメントでお願いします。
第一回はサーバーの構築の話。
GMODの話は二話からの予定。(サーバー持ってて動かしてる人は読む必要ないです。)
ConoHaとは
GMOのホスティングサービス(サーバーレンタルサービス)です。
今回はここのVPS(Virtual Private Server、仮想専用サーバー)をお借りします。
サーバーのスペックは後でも変えられるので、とりあえず、月968円の2Core/メモリ1GB、SSD50GBのサーバーを借ります。
rootパスワードとネームタグは適切なものを設定します。
長期で使用するならVPS割引きっぷを使いましょう。3か月~のまとめ払いで割引されます。(今回は、イメージ作ってすぐ作り直す予定なので、割引きっぷはつかいませんでした。)
ConoHa VPSのセットアップ
公式の入門ガイドを見ながらセットアップしていきます。
一般ユーザーを設定
rootアカウントは権限が強すぎるため、普段は一般ユーザーを追加して行います。
はじめてサーバーを触る人はなんでそんなめんどくさいことをと思うかもしれません。(事実ボクも思ってました)
が、簡単にいうと、誤動作によって大事なものを削除してしまわないようにということみたいです。一般ユーザー作成後は、rootアカウントを使用不能にします。(コントロールパネルのコンソールからは使えますのでご安心ください)
# useradd [ユーザー名]
passwd [ユーザー名]
New password:[任意のパスワード]
Retype new password:[↑で入力したパスワード]
※「Passwd: all authentication tokens updated successfully.」と出ると成功
# usermod -G wheel [ユーザー名]
一般ユーザーで公開鍵認証を使用してSSHログインする|ConoHa VPSサポート
TerraTermで公開鍵および鍵穴をつくります。
キーはわかりやすい場所に保存しておきましょう。
接続をキャンセル
接続>SSH鍵生成
RSA、ビット数2048、bcrypt KDF形式はチェック外す
生成ボタン
パスフレーズ・コメントは任意
公開鍵(鍵穴)の保存
秘密鍵の保存
キーを作った後、Teratermで一般ユーザーでログインしろというのが、どうやってもできない。で、ggった結果、suコマンドというので、ユーザーを変更できるらしい。
rootでログインした後、
# su - [一般ユーザー名]
※-はオプションで必須
すると、#が$に。(一般ユーザーに)
送信先は未記入でホームディレクトリに保存される的なことが書いてあったが、何回やっても無理。
結局、送信先に「/home/[一般ユーザー名]」と入れることでやっとホームディレクトリに現れた。
$ mkdir .ssh
$ chmod 700 .ssh
でディレクトリを作り、
$ mv id_rsa.pub .ssh/authorized_keys
$ chmod 600 .ssh/authorized_keys
で、作ったディレクトリに移動。
パーミッションチェンジしようとすると
chmod: changing permissions of 'authorized_keys': Operation not permitted
なんじゃこりゃああああ。
変更できない。しばらく調べても回避策なし。
でも、一般ユーザー名とパスワード、鍵をつかって、普通にログインできたのでいっかなってことに。
(いいのか?)
rootログインの禁止
rootで作業できないようにログインを禁止にします。
ちなみに、これは、TeraTerm上でログインできないだけで、コンソールからはログインできるのでご安心を。
TeraTermからrootでログイン
viっていうのは、テキストエディタ―。
変更したいときは「i」キーを押してインサートモードに。終わったらESC
上書き保存して終了するときは、「:」キー押してwq(Write & quit)
PermitRootLogin no
PasswordAuthentication no
設定を反映
# systemctl reload sshd
これで、TeraTermからrootでログインはできなくなりました。
もともと全許可で構築したので、問題なし。
接続ポートの変更(ファイアウォールの設定も一緒に)
初期では「22」番のポートになっているが、このままではあぶない。
よくわかりませんが、世界各地から不正ログインが殺到するらしい。
変えよう。
なんかいろんなサイト見て回った。
root権限いるっぽいので、「su」コマンドrootに変更。
$su
Password:[管理者パスワード]
# systemctl start firewalld
参考サイトのコマンドを試すも……
Warning Not_ENABLED: xxxxx:tcp
success
どっちやねん。
てか、もちろん、うまく行ってない。
いろいろ試した結果、うまくいった方法は以下の通り。
# firewall-cmd --permanent --add-port=xxxxx/tcp
# firewall-cmd --reload
# firewall-cmd --list-all
Portに設定したポート番号が表示されるのを確認。
GMOD用に27015(TCP/UDP)も開放したいけど、まあ、それは今度でいいや。今日はサーバーの構築で限界。(もう3時)
さっき開いたSSH_Configでポートの変更
#Port 22の下に
Port xxxxx
を追加。
# systemctl reload sshd
ログインできたー!
つかれた。
もうなんつーか、いろいろ試行錯誤で疲れた。
GMODのインストール、各種設定とポート開放は明日(次回)やります。