🏠右奮闘ホームサーバービルダー-サーバープリファレンス🏠


概要
このシリーズはUbuntu Server 20.04バージョンに準拠しています.
右奮闘設定を完了した作業について説明します.
筆者は物理サーバ(Mele Quieter2)で作業しているが、AWSやGCPなどのクラウドプラットフォームでも利用できる.
ただし、AWSまたはGCPでは、外部とインスタンスとの間で通信するファイアウォールが設定されているものとします.
筆者が使用している物理サーバ(Mele Quieter2)の詳細については、🏠右奮闘ホームサーバビルダー-開始🏠を参照してください.
1.パッケージのアップグレード
sudo apt update && sudo apt upgrade
まず、パッケージの更新とアップグレードを行います.
2.タイムゾーンの設定
timedatectl
上のコマンドで、現在右奮闘サーバに設定されている期間を確認します.
sudo dpkg-reconfigure tzdata
上記のコマンドを実行すると、次のようにタイムゾーンを選択するための画面が出力されます.


筆者はAsia/Seoulに設定した.
3.SSHユーザー制限
サーバのセキュリティを確保するためには、(Whitelist)SSHを介してサーバに接続することのみを許可します.
nanoエディタを使用してSSHプロファイルsshd configを開きます.
筆者はナノエディタを使っていますが、viを使ってもいいです.
sudo nano /etc/ssh/sshd_config
次の内容をファイルの最後の行に追加します.(後で変更できるように)
AllowUsers {user}
e.g.
AllowUsers ubuntu
複数のユーザーを追加する場合は、スペースで区切ります.
e.g.
AllowUsers user1 user2
逆に、特定のユーザーのみにログインさせたくない場合は、次のように入力します.
e.g.
DenyUsers user1 user2
変更内容を保存するためにSSHデーモンを再ロードします.
sudo systemctl reload sshd
4.ファイアウォールの設定
まずufwを無効にします.これは私たちが奮闘している基本的なファイアウォールです.
sudo ufw disable
iptablesはiptables-persistentパッケージをインストールし、サーバが再起動するとこれらのパッケージの設定値が初期化されるので、設定値を維持することができます.
sudo apt install iptables-persistent -y
インストール中に、現在のIPv 4、IPv 6ルールを保存するかどうかを尋ねます.右側の奮闘サーバを最初にインストールした後にルールが設定されていないため、YesまたはNoを選択してもかまいません.
iptablesルールを作成する前にiptablesを初期化します.
sudo iptables -F
sudo iptables -X
sudo iptables -t nat -F
sudo iptables -t nat -X
sudo iptables -t mangle -F
sudo iptables -t mangle -X
sudo iptables -P INPUT ACCEPT
sudo iptables -P FORWARD ACCEPT
sudo iptables -P OUTPUT ACCEPT
-F各チェーンに設定されているすべてのルールを削除します.
-X基本チェーン以外のすべてのチェーンを削除します.
-P基本ポリシーを設定します.
INPUT、FOrWARD、OUTPUTともにACCEPTに初期化
変更を保存し、iptablesを再ロードします.
sudo netfilter-persistent save
sudo netfilter-persistent reload
localhost接続を許可します.
sudo iptables -A INPUT -i lo -j ACCEPT
関連付けと確立されたパケット接続を許可します.
sudo iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
ssh、http、httpsポートを開きます.
sudo iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
このシリーズには、RDPおよび中継サーバが含まれます.외부 클라이언트(브라우저) <-> 중계 서버(Guacamole) <-> RDP(우분투 서버)1台のサーバにGuacamoleとxrdpがインストールされているため、Guacmole中継RDPのターゲットはlocalhostです.したがって、RDPポートをファイアウォールに個別に開放する必要はありません.
個別の3 rd party RDPクライアントまたはウィンドウのリモートデスクトップ接続機能を使用する場合は、次のコマンドを使用してRDPが使用する3389ポートを開きます.
sudo iptables -A INPUT -p tcp -m tcp --dport 3389 -j ACCEPT
上記のコマンドは、個別のサードパーティRDPクライアントまたはウィンドウのリモートデスクトップ接続機能を使用する計画がある場合にのみ使用する必要があります.
3389ポートを開放すると、サーバのセキュリティが低下する可能性があります.
オープン・ルールを除いて、すべてのバインド・パケットが切断されます.
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
サーバから外部へのOutboundパケットは許可されています
sudo iptables -P OUTPUT ACCEPT
設定内容を確認します.
sudo iptables -S
変更を保存し、iptablesを再ロードします.
sudo netfilter-persistent save
sudo netfilter-persistent reload
の最後の部分
今回の放送では、右奮闘サーバーを設置した後の作業を紹介しました.
次の記事では、右奮闘サーバにデスクトップ環境とxrdpをインストールし、よくあるエラーを解決する手順について説明します.