第3回、ゲームサーバーの立て方~リモートアクセス~
さて、第三回ですが今までの連載でこんな質問をいただきました。
ポート開放してセキュリティは大丈夫か?
サーバーの予定のPCは離れた場所にあるけどどうするの?
今回はその辺の説明をしていきます。
第1回、ゲームサーバーの立て方ー序章ー
第2回、ゲームサーバーの立て方~ルーターは友達?~
第3回、ゲームサーバーの立て方~リモートアクセス~ --now
第4回、ゲームサーバーの立て方~XRDP~
第5回、ゲームサーバーの立て方~ゲームインストール~
第6回、ゲームサーバーの立て方~設定編~
第7回、ゲームサーバーの立て方~運用編~
ポート開放のセキュリティ
実はポート開放というのは普通にPCを使っていてもアプリケーションによっては一時的に開けたりしています。
参考
エフェメラルポート(ダイナミックポート / 動的ポート)とは - 意味をわかりやすく - IT用語辞典 e-Words
つまり、ポート開けることが危険というよりも、常に決まったポートが開いていて、そこからリモートアクセスができてしまうことが危険となります。
とはいえ、開いているポートというのは結構簡単に調べられるそうなんで動的ポートだからといってリスクはあるという事をまずは伝えておきます。
まぁ何が言いたいかというと、結局インターネットにつなぐこと自体にリスクはあって、
大事なのはリスクコントロールだという事です。
これが、WEBサイトやVPN、リモートコントロールのためのポート開放となると、それなりのセキュリティ対策が必要になりますが、ゲームサーバーの場合は特別な対策はそこまで必要ないと思っています。
それも、こじんまりとしたサーバーなわけですから対策が最低限でもリスクは少ないと思います。
じゃあ最低限とは何かというと、ログインパスワードを設定しておく。
アップデートを最新にしておく、余計なポートは開けない等です。
セキュリティ対策ソフトについては、クライアントOSの場合は入っていたほうがいいですが、
LinuxサーバーOSの場合はどちらでもという気がします。
結局、そのセキュリティーソフトがゲームサーバーのためのセキュリティを提供していなければ意味がないからです。
ようはゲームサーバーのポートやゲームサーバーのアプリケーションを監視して、怪しい動きが無いか?ウィルスソフトをダウンロードしていないか?ウィルスソフトに感染していないか?感染していたら対策が出来るのか?といった機能があるかどうか?です。
こういった機能がないのにセキュリティーソフトがあるから大丈夫と慢心してしまって、
監視をおろそかにするほうが危険だと私は思っています。
要はサーバーとするPCには余計なものを入れない。(重要なファイルやよくわからないツールなど)
ファイヤーウォールの設定はしっかりチェックする。
アップデートは常に最新にする。
くらいやればゲームサーバーであれば最低限対策していることになると思います。
それ以上を求めるのであれば自力で頑張ってくださいとしか言えませんが。
セキュリティーが怖いからゲームサーバーが建てられないというのであれば、
そこまで心配しなくても大丈夫だよと私は伝えたい。
但し、ゲームサーバー以外のものを外部に公開となると(FTPとか)リスクは跳ね上がるのでしっかりセキュリティ対策はするべきだと伝えます。
リモートアクセス
サーバーを別PC(メインじゃないPC)で建てるとなると必要に感じるのがリモート管理です。
サーバーPCって安定してしまえば基本放置になります。
監視をしたり、ゲームサーバーの設定をいじったりするくらいでしか使いません。
そのためにわざわざ別モニターと別キーボードを使って設定するのも面倒なので、
リモートで管理しちゃいます。
リモート管理ができれば、そもそもサーバーをどこにおいても問題なくなるので。
まぁ外に置くのは上記のセキュリティーの問題があるので、
自宅のどこでもいいよという事になるんですが。
このリモート管理ができるから、レンタルサーバーやクラウドサーバーがあるわけです。
本来であればサーバーPCのネットワークエリアとメインPCのエリアは分けるのが基本です。
とは言えゲームサーバーをメインPCで建てたりするのとリスクは変わらないので、最初はそこまで気にしなくていいと思います。
建ててから考えましょう!
ただし、自己責任です!
当方は責任をとれませんのであしからず。(ここまで言っといて…)
SSH(Secure Shell)
まず、サーバーのリモート管理というと真っ先に上がるのが「SSH」です。
参考
SSHとは | クラウド・データセンター用語集/IDCフロンティア (idcf.jp)
これは、通信を暗号化したうえで、直接コマンドを叩けるというものです。
Windowsでいうところのコマンドプロンプトを別なPCから直接弄れるというものになります。
サーバーを立てようと調べるとほぼ必ず出てくるんじゃないか?というほどメジャーなものな気がします。
但し、自分はSSHクライアントアプリをほぼ使っていません。
一応アプリはインストールしてありますが。
全く使っていません。
他の管理ソフトで代用していますので。
この辺はお好みで。
RDP(リモートデスクトップ)
これは自分が最初に使っていた、リモートアクセス方法です。
GUI(グラフィカル・ユーザー・インターフェイス)が入っているPCで使えます。
メインPC内に他のPCのデスクトップを表示して動かせるものとなります。
Windowsの場合PRO以上のエディションにサーバー側のサービスが、
HOMEエディション以上にはクライアント側の機能が標準で入っています。
Linuxの場合はXRDPというアプリをインストールすることで、
Windowsからリモートで使えるようになる便利な機能です。
コマンドだけで弄ることが難しそうに感じる方はまずはこちらから入ることをお勧めします。
ただし、暗号化は標準では出来ていないようなので、外部で通信するのはそのままではお勧めしません。
きちんとしたセキュリティ対策をしたうえでなら、という事になりますが。
通信は暗号化されているようですが、認証は怪しいです。のでそのまま外部公開は危険だと思います。
ローカル(家の中)で使う分には問題ないでしょう。
その他のツール
ここでは詳しく説明しませんが、自分はLinux系で使える(?)
CockPitといわれるWEB管理ツールとSFTPツールでリモート管理しています。
ただまぁちょっと癖があるので、初めてから使うのにはお勧めはしないですね。
シンプルな管理ツールなので初心者におすすめではあるんですけど。
ゲームサーバーをとりあえず立ててみたいのであれば後回しでいいツールだと思います。
WoL(Wake On LAN)
最後にリモート管理をするのならあったほうがいい機能WOLについて説明します。
これは、停止しているPCを他のPCから起動させることができる機能です。(名前のまんまw)
実際にはBIOS(UEFI)に実装されている機能で。PCの電源が落ちていても、スタンバイ状態でネットワークを待機して、そこに特別なパケットが送られてくると、PCの電源を入れてくれるという機能になります。
何が便利かというと、例えば1階にサーバーPC、2階にメインPCを置いていて、
ゲームサーバーを立ち上げたいときだけ、サーバーPCを起動させて、用が済んだら停止したいときに使えます。
サーバーPCを停止させたいときはリモートデスクトップで終了させればいいだけですが。
電源が落ちてしまえば、通常なんも通信できなくなるので、わざわざ1階に降りて電源ボタンを押さなければいけません。
それを別なPCからアプリで電源ボタンを押せるようになるのです。
ただこの機能はマザーボードに依存するのでマザーが対応していなければ使えません。
標準では多分無効になっているので、有効に設定してあげる必要もあります。
もし対応していないときは諦めて1階に降りるか、サーバーPCを2階に持ってくることになります。
リブーターという装置もありますが結構いい値段がします。
マザーが対応しているといいですね!
次回はリモートデスクトップの実装方ですかね?