LoginSignup
0
1

More than 5 years have passed since last update.

minig pool作成時のNATルータセキュリティ方針

Last updated at Posted at 2017-11-03

前提

このナレッジが必要なのは、マイニングプール構築の場合だけかもしれない。

通常のサービスであれば、
・ロードバランサを使う
・仮想ルータ的なものを使う
・クラウドサービスで提供されているセキュリティ機能を使う
が王道。

LinuxでNATする理由

coindがportを大量に消費する為。
VPSで提供されているロードバランサはport固定が多いんですよね、、、
拡張性を考えると役不足。

なお、コイン毎にNOMPを個別に建てるなら、ここまで考えなくて良い。
ただワタクシは、ひとつのページで全コインの採掘状況を知りたい(こだわり)

NATルータのセキュリティ方針

Interne側のSSHポートを閉じちゃう

オーナー含めて誰もアクセスできない、これ最強。
そもそも、役割分担としてiptable 管理くらいしかしないはず。

SSHそのものをアンインストールしない理由は、ログの回収やパッチアップデート関連作業のため。これらはプライベートアドレスを持った内部サーバから実施すればよい。

管理用ユーザの作成&sudo権限付与

後述する「rootアカウントでのログイン禁止の為に必要」なので作成。

adduser 管理用ユーザ名
gpasswd -a 管理用ユーザ名 sudo

実施後にログアウトして、管理用ユーザとして再ログイン

/etc/ssh/sshd_config の編集

念の為に設定。
・ポートの変更
・rootアカウントでのログイン禁止
は最低限、実施したい。

testuser@nat:~$ more /etc/ssh/sshd_config
# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 21  <--ココを「任意の数字」に変更
# Use these options to restrict which interfaces/protocols sshd will bind to
#ListenAddress ::
#ListenAddress 0.0.0.0
Protocol 2
# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key
#Privilege Separation is turned on for security
UsePrivilegeSeparation yes

# Lifetime and size of ephemeral version 1 server key
KeyRegenerationInterval 3600
ServerKeyBits 1024

# Logging
SyslogFacility AUTH
LogLevel INFO

# Authentication:
LoginGraceTime 120
PermitRootLogin yes <--ココを「no」変更
StrictModes yes

定期的なセキュリティパッチ適応

お忘れなく。

iptablesの設定について (セキュリティ編)

インターネット→プライベート

「DNAT」すればよい。

プライベート→インターネット

「SNAT」すればよい。

「MASQUERADE」のほうがセキュアでは?

coindを利用する際、ポート番号は重要な意味を持つ。
よって、通信ポートを変更してしまう「MASQUERADE」はNGとなる。

総括

セキュリティ方針が決まったので、次回から実装編(の予定)

追記

昔、物理サーバをレンタルしていた時に成功した構成だったので、行けると思っていたのですが、、、

現在、メインで利用しているクラウドVPSがNAT禁止だったため、構築断念。
契約先を見直して、いつか再チャレンジします。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1