Linux

【AlmaLinux】firewall-cmdを使用してssh接続を許可する方法

サポートの終了したcentos8の代わりとして、有力な移行先となっているAlmaLinux。
今回はそんなAlmaLinuxをインストールしたマシンにSSH接続する方法をご紹介します。

ファイアウォールの設定変更方法と、SELinuxの設定方法も併せてご紹介しますので、ぜひ最後までご覧ください!

この記事で分かることは以下の通りです!

  • AlmaLinuxをインストールしたマシンにSSH接続する方法
  • firewall-cmdを使用してsshプロトコルを許可する方法
  • SELinuxを無効化する方法

また、今回使用するAlmaLinuxバージョンは8.5になります。
それでは早速みていきましょう!

firewall-cmdを使用してsshを許可

Linuxマシンにssh接続する際は、ssh通信を許可する必要があります
まず、firewalld(ファイアウォール)が有効になっているかどうかを確認して、有効になっている場合はssh通信を許可するよう設定を変更します。

firewalldが有効化されているか確認

firewalldが有効になっているかは、以下のコマンドで確認します。

# systemctl status firewalld

 

このコマンドを実行して、「Active:」に記載されている表記を確認します。
有効になっていた場合は、active(running)
無効になっていた場合は、inactive(dead)
となります。

firewalldのステータス確認

firewallの設定内容確認

firewalldが有効になっていた場合は、ssh接続が許可されているか確認します

# firewall-cmd --list-all

services:」に許可されているサービスが表示されます。
sshが表示されていれば、ssh接続が許可されています。

許可されているサービスを確認

firewallの設定変更

許可するサービスの設定変更

sshが許可されていない場合、以下のコマンドで有効化しましょう。

# firewall-cmd --add-service=ssh --zone=public --permanent
# firewall-cmd --reload

上のコマンドでssh接続を許可する設定を追加し、下のコマンドで設定を反映します

–permanent」オプションを使用しない場合、サーバ再起動などで設定がリセットされてしまうため注意が必要です。許可サービスを追加

ソースアドレスの指定

ssh接続元のIPアドレスを絞る場合は以下のコマンドで指定可能です。

# firewall-cmd --add-source=<IPアドレス> --zone=public --permanent

コマンド実行後は、前述のreloadコマンドを実行して、設定を反映させる必要があります。

以下は、「192.168.56.1/24」のIPアドレス範囲を指定した例です。
許可するソースを追加

ssh接続の確認

無事、ssh通信を許可できたら、実際にssh接続してみましょう。

Windowsであれば、ssh接続可能なツール(TeraTerm、rlogin)
Macであればターミナルからsshコマンドを使用すると手っ取り早いでしょう。

今回はターミナルからssh接続する方法をご紹介します。
sshコマンドを使用して接続するには、以下のコマンドを実行します。

# ssh <ユーザ名>@<サーバIPアドレス>

以下は、サーバ「192.168.56.2」に、ユーザ「root」で接続した例です。
ssh初回ログイン時

初回ログイン時は、「Are you sure you want to continue connecting (yes/no/[fingerprint])?」と表示されるので、「yes」を入力します。

また、パスワードを入力するメッセージが表示されたら、サーバ側で設定しているパスワード(ここではrootのパスワード)を入力します。

以下の画像のように、Linuxのコンソール画面が表示されればsshログイン成功です!

sshログイン完了

SELinuxの無効化手順

もし、ssh接続できない場合は、SELinuxが有効になっていないか確認しましょう。
今回はSELinuxを使用しないため、無効化しておきます

SELinuxの設定状況確認

まずは、以下のコマンドでSELinuxの有効・無効状況を確認します。

# getenforce

Enforcing」と表示された場合は有効化されています。

selinuxの設定状況を確認

SELinuxの無効化

SELinuxを無効化するには以下のようにして、ファイルを編集します

# vi /etc/sysconfig/selinux
[7行目]
SELINUX=enforcing
  ↓ 変更
SELINUX=disabled

変更後はサーバを再起動する必要があります。

以下の画像は変更前のselinuxの設定です。
赤枠で囲んだ部分を「disabled」に変更します。

selinuxデフォルトコンフィグ

変更後の設定は以下のようになります。

selinux変更後のコンフィグ

設定変更後は、サーバを再起動して、「getenforce」コマンドを実行しましょう。
Disabled」と表示されていれば、SELinuxが無効化されています。
selinuxの無効化確認

まとめ

今回はAlmaLinuxをインストールしたマシンにSSH接続する方法をご紹介しました。

今回ご紹介した内容は以下の通りです。

  • AlmaLinuxをインストールしたマシンにSSH接続する方法
  • firewall-cmdを使用してsshプロトコルを許可する方法
  • SELinuxを無効化する方法

特にfirewall-cmdを使用して、許可するサービスやIPを設定する方法は、ssh以外にも様々な場面で使うことになるので、しっかり押さえておきましょう

それでは!

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です