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

AlmaLinux9.8 : SSH、ファイアウォール(firewalld)、NTP サーバー

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

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

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

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

# vi /etc/ssh/sshd_config

21行目 : コメント解除しPort 2244に変更
Port 2244

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

40行目「#PermitRootLogin prohibit-password」「#」を削除

SSH の再起動

# systemctl restart sshd.service

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

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

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

2.1 「firewalld」を制御するための「firewall-cmd」コマンド使用方法

1)「fierwalld」の状態や設定内容を確認するためのコマンド
①firewalld稼働状況確認

# firewall-cmd --state
running
「firewalld」が動作している場合は「running」、停止している場合は「not running」と表示されます

➁defaultゾーン設定を表示

# firewall-cmd --list-all

public (active)
  target: default
  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 (active)
target: default
icmp-block-inversion: no
interfaces: ens160
sources:
services: cockpit dhcpv6-client ssh
ports: 2244/tcp
protocols:
forward: no
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

2244 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:
Activate the web console with: systemctl enable --now cockpit.socket

Last login: Tue Jun 30 15:47:57 2026 from 192.168.11.14
huong@Lepard:~$

4.NTP サーバーの設定

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

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

# dnf -y install chrony
# vi /etc/chrony.conf
3行目 : コメントアウトにして、その下に追加
#pool 2.almalinux.pool.ntp.org iburst
pool ntp.nict.jp iburst

②chrony を再起動し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-b3.nict.go.jp             1   6    17    44   +322us[ +322us] +/- 6075us
^- ntp-b2.nict.go.jp             1   6    17    44   +345us[ +345us] +/- 6489us
^- ntp-a3.nict.go.jp             1   6    17    44   +594us[ +594us] +/- 6194us
^* ntp-k1.nict.jp                1   6    17    44   +163us[  -68us] +/- 3656us

*印がついていたら同期ができています。 (起動してから同期までに10分ぐらいかかります。)