編集済み 3 数週間前 によって ExtremeHow 編集チーム
リモートアクセスセキュリティSSHサーバー管理コマンドライン設定暗号化クライアントネットワークアクセス認証
翻訳が更新されました 3 数週間前
LinuxシステムでSSH(Secure Shell)を構成することは、リモートシステムを安全に管理し通信するために基本的なタスクです。SSHは、安全でないネットワーク上に安全なチャネルを提供することで、デバイス間の通信が機密かつ安全であることを保証します。このガイドでは、Linuxマシン上でSSHを設定および構成する方法を探ります。誰でも理解しやすいように、簡潔なセクションに分けて説明します。
SSHはSecure Shellの略で、基本的にはユーザーがネットワーク上のデバイスに安全にアクセスし管理できるようにするネットワークプロトコルです。その主な目的の1つは、クライアントとサーバー間で送信されるデータを暗号化することによって、安全なチャネルを提供することです。また、安全なファイル転送やポート転送などの他の機能もサポートしています。
SSHを使用する主な利点は以下の通りです:
SSHを構成する前に、いくつかの前提条件を満たす必要があります。これらの前提条件が満たされていることで、構成プロセスが容易になります。
多くのLinuxディストリビューションでは、デフォルトでSSHが付属しています。ただし、一部のケースでは手動でインストールする必要があります。通常必要なパッケージはopenssh-serverです。
ターミナルを開いて、次のコマンドを実行します:
sudo apt update
sudo apt install openssh-server
次のコマンドを実行します:
sudo yum install openssh-server
インストール後、次のコマンドでSSHサービスを開始します:
sudo systemctl start ssh
SSHサービスが起動時に開始されるようにするには、次のコマンドで有効にします:
sudo systemctl enable ssh
CentOSやsshdという名前を使用しているシステムでは、上記のコマンドのssh
をsshd
に置き換えてください。
SSHがインストールされて起動したら、次はそれを必要に応じて構成します。SSHの主な構成ファイルは/etc/ssh/sshd_config
にあります。
お好みのテキストエディタを使用して構成ファイルを開きます。たとえば、nano
を使用する場合、次のようにします:
sudo nano /etc/ssh/sshd_config
次のような重要な設定を構成します:
# Port 22
Port 2222
PermitRootLogin no
PasswordAuthentication no
MaxAuthTries 3
AllowUsers user1 user2
SSHキーは、サーバーにログインするためのより安全で便利な方法です。それにより、パスワードを記憶して入力する必要がなくなります。
クライアントマシンで次のコマンドを使用してキーペアを生成できます:
ssh-keygen -t rsa -b 4096
プロンプトに従ってキーを保存し、必要に応じてセキュリティを追加するためにパスフレーズを入力します。キーは通常~/.ssh/id_rsa
(秘密鍵)と~/.ssh/id_rsa.pub
(公開鍵)に保存されます。
ssh-copy-id
を使用して公開鍵をサーバーにコピーします。このコマンドは~/.ssh/authorized_keys
ファイルに公開鍵を追加します:
ssh-copy-id user@hostname_or_ip
キーがコピーされたら、SSH接続をテストしてキーベースの認証を使用しているか確認します:
ssh user@hostname_or_ip
すべてが正しく設定されている場合、パスワードは要求されません。
セキュリティの強化は、データだけでなく、ネットワークとシステムへの不正アクセスからも保護します。SSHセキュリティを強化する方法をいくつか紹介します:
パスフレーズはSSHキーにセキュリティ層を提供します。強力で一意のパスフレーズを選択して、他人があなたの秘密鍵にアクセスした場合でも、パスフレーズなしでは使用できないようにします。
前述のように、PermitRootLogin no
を設定して、ルートユーザーとして直接ログインする機能を無効にします。代わりにsudo
を使用して管理タスクを実行します。
デフォルトのSSHポート(22)をあまり一般的でないポートに変更すると、自動攻撃のリスクを軽減できます。新しいポートがサーバーを保護するファイアウォールで開いていることを確認してください。
パスワードベースのログインを無効にし、SSHキーのみを使用することでブルートフォース攻撃のリスクを大幅に減少させます。キーベースの認証をセットアップした後、sshd_config
を更新してPasswordAuthentication no
を設定します。
SSHを構成した後、設定が想定どおりに動作することを確認するためにテストすることが重要です。
異なるユーザーアカウントでのログイン、キーベースのログインの使用、制限されたユーザーがアクセスできないことの確認など、異なるシナリオでSSH設定をテストします。
問題が発生した場合、最初に確認するのはSSHサーバーログで、通常/var/log/auth.log
または/var/log/secure
にあります。これらのログは認証または構成の問題に関する手がかりを提供します。
結論として、LinuxシステムにSSHを構成することは、デバイスにリモートでアクセスし管理する安全な方法を提供します。このガイドの手順に従うことで、SSHをサーバーにインストール、構成、およびセキュリティを強化できます。セキュリティは継続的なプロセスであるため、システムを保護するためにSSH設定を定期的にレビューし更新してください。
記事の内容に誤りがある場合, あなたは