業務用エアコン関連の技術情報、エラーコード、環境問題対策に関する別サイト「エアコンの安全な修理・適切なフロン回収」

RockyLinux10.2 : SSH , Firewalld , NTPサーバー

1.SSHによるリモート接続の設定

SSHはサーバーへリモートで接続するためのサービスで、基本的にはOSインストール直後に動作していますが、デフォルトの設定ではややセキュリティに難があります。
ここではデフォルトの設定を変更してssh接続のセキュリティを高める設定を行います。

1.1 SSHサービスの設定ファイル変更

SSHサービスの設定を変更するために設定ファイルを変更します。
SSHサービスの設定ファイルは"/etc/ssh/sshd_config"になります。

# vi /etc/ssh/sshd_config

21行目「#Port 22」コメント解除して今回は「Port 2244」に変更して進めていきます
Port 2244

23行目「#ListenAddress 0.0.0.0」の「#」を削除します
ListenAddress 0.0.0.0

40行目「#PermitRootLogin prohibit-password」「#」を削除します
rootユーザーはユーザー名が既に判明しているためパスワードが判明すると、管理者権限でサーバーへログイン出来るため、これを拒否する設定を行います。
PermitRootLogin prohibit-password

SSH の再起動

# systemctl restart sshd.service

このままでは次に再起動したときSSHによるリモート接続ができなくなるので、次のファイアウォールの設定でSSHポート2244番を解放してください。

2.ファイアウォール(firewalld)の設定方法

RockyLinuxではファイアウォールはfirewalldがデフォルトに設定されており、OSインストール時に有効になっています。
「firewalld」について簡単に説明すると、通信制御のポリシーを設定する場合、事前に定義されたゾーンに対して通信の許可・遮断ルールを適用し、そのゾーンを各NIC(ネットワークアダプタ)に割り当てていくという方式になっています。

2.1 「firewall-cmd」コマンド使用方法

1)「fierwalld」の状態や設定内容を確認するためのコマンド
①firewalld稼働状況確認
「firewalld」が動作している場合は「running」、停止している場合は「not running」と表示されます

# firewall-cmd --state
running

➁defaultゾーン設定を表示

# firewall-cmd --list-all

public (default, active)
  target: default
  ingress-priority: 0
  egress-priority: 0
  icmp-block-inversion: no
  interfaces: ens160
  sources:
  services: cockpit dhcpv6-client ssh
  ports:
  protocols:
  forward: yes
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

上記の例ではサービス「 cockpit」「 dhcpv6-client」「 ssh」が許可されていること等がわかります

③「--permanent」オプションについて
サーバの再起動や「firewalld」サービスの再起動で設定が消えてしまわないようにするためには、
「--permanent」オプションを使用して設定を行う必要があります。その際、「--permanent」オプションを指定して設定を行った場合は、そのままでは「firewalld」に設定が反映されないため「fiewall-cmd  --reload」で設定を反映させる必要があります
例としてHTTPサービスをシステムを再起動しても初期化されず恒久的に利用するためには

# firewall-cmd --add-service=http --permanent
# firewall-cmd --reload

④起動・停止方法
「firewalld」は「systemd」で制御されているので、起動と停止には「systemctl」コマンドを使用

firewalldの起動
# systemctl start firewalld

firewalldの停止
# systemctl stop firewalld

2.2  変更したSSHポート2244番を解放する

# firewall-cmd --add-port=2244/tcp --permanent
success
# firewall-cmd --reload
success

# firewall-cmd --list-all
public (default, active)
  target: default
  ingress-priority: 0
  egress-priority: 0
  icmp-block-inversion: no
  interfaces: ens160
  sources:
  services: cockpit dhcpv6-client http ssh
  ports: 2244/tcp
  protocols:
  forward: yes
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

2244/tcp port が追加されている

3.Windowsからリモート接続

Tabby Terminalで接続する方法
オプション -p 2244 で変更したSSHポート番号を指定する

C:\Users\xxxxx>ssh huong@192.168.11.83 -p 2244
huong@192.168.11.83's password: 
Web console: https://localhost:9090/ or https://192.168.11.45:9090/

Last login: Tue Jun  2 10:02:48 2026 from 192.168.11.6

4.NTP サーバーの設定

サーバの時刻を日本標準時に同期させるNTP サーバーを構築します

①Chrony のインストールと設定

# dnf -y install chrony
# vi /etc/chrony.conf

3行目 : コメントアウトにして、その下に追加
#pool 2.rocky.pool.ntp.org iburst
pool ntp.nict.jp iburst

②chrony を有効化し再起動

# systemctl enable chronyd.service
# systemctl restart chronyd.service

③firewallでNTPポート解放

# firewall-cmd --add-service=ntp --permanent
# firewall-cmd --reload

④chronyd のステータス( 動作 )の確認

# chronyc sources

MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^- ntp-k1.nict.jp                1   6    17    56    -98us[  -98us] +/- 3821us
^* ntp-a2.nict.go.jp             1   6    17    56    -58us[ +307us] +/- 6157us
^- ntp-b3.nict.go.jp             1   6    17    56   +941us[ +941us] +/- 6065us
^- ntp-b2.nict.go.jp             1   6    17    56   +268us[ +268us] +/- 6158us

*印がついていたら同期ができています。