はじめに
セキュアシェル (SSH)は、クライアントが安全な環境でリモートサーバーと対話できるようにする暗号化プロトコルです。
高レベルの暗号化により、機密情報の交換が保護され、リモートマシンでのトランスジェンダーやコマンドの安全な発行が可能になります。
CentOS7でSSHを有効にする方法を学ぶ この短いチュートリアルの指示に従ってください。
前提条件
- SSHサーバーとして機能するCentOS7システム
- 必要な権限を持つユーザー
- コマンドラインへのアクセス(Ctrl-Alt-T)
- うーん ユーティリティ(デフォルトで含まれています)
CentOS7へのOpenSSHのインストールと有効化
SSHソフトウェアパッケージはデフォルトでCentOSに含まれています。ただし、これらのパッケージがシステムに存在しない場合は、以下に概説するステップ1を完了することで簡単にインストールできます。
ステップ1:OpenSSHサーバーソフトウェアパッケージをインストールする
端末から次のコマンドを入力して、インストールプロセスを開始します。
sudo yum –y install openssh-server openssh-clients
このコマンドは、OpenSSHクライアントアプリケーションとOpenSSHサーバーデーモン sshdの両方をインストールします。 。
この例では、システムは最新バージョンがすでに存在することを通知します。
ステップ2:SSHサービスを開始する
SSHデーモンを起動するには OpenSSHサーバーの場合:
sudo systemctl start sshd
アクティブな場合、 sshd いずれかのクライアントツールからのクライアント接続を継続的にリッスンします。接続要求が発生すると、 sshd 正しい接続を設定します。
ステップ3:sshdステータスを確認する
SSHデーモンのステータスを確認します:
sudo systemctl status sshd
以前にサービスを開始したので、出力はサービスがアクティブであることを確認します。
SSHデーモンを停止するには、次のように入力します。
systemctl stop sshd
状態を確認することで、サービスが停止しているかどうかを確認できます。出力には、サービスが非アクティブであり、ステータスが最後に変更された日時が示されます。
ステップ4:OpenSSHサービスを有効にする
systemctl を使用して、システムを再起動するたびにSSHが自動的に開始するようにします コマンド:
sudo systemctl enable sshd
再起動後にSSHを無効にするには、次のように入力します。
sudo systemctl disable sshd
OpenSSHサーバー構成
sshdを適切に構成する 構成ファイルはサーバーのセキュリティを強化します。セキュリティを強化するための最も一般的な設定は、ポート番号の変更、rootログインの無効化、および特定のユーザーのみへのアクセスの制限です。
これらの設定を編集するには、/ etc / ssh / sshd_configにアクセスします ファイル:
sudo vim /etc/ssh/sshd_config
テキストエディタを使用してファイルにアクセスしたら(この例では vim を使用しました )、rootログインを無効にして、デフォルトのポート番号を編集できます:
- rootログインを無効にするには:
PermitRootLogin no
- 非標準ポートで実行するようにSSHポートを変更します。例:
ポート2002
ハッシュタグを削除して、編集した行のコメントを解除することを忘れないでください。
ファイルを保存して閉じます。 sshdを再起動します :
service sshd restart
ファイアウォール設定
SSHを正常に有効にし、 sshdを構成した後 ファイルを作成し、ファイアウォール設定を調整して、互換性の問題がないことを確認します。
IPアクセスを制限して、接続をさらに安全にすることもできます。
IPアクセスを制限するには、 iptablesを編集します 次のように入力してファイルを作成します:
sudo vim /etc/sysconfig/iptables
sshd構成ファイルで定義されたポートを使用したアクセスを許可するには、iptablesファイルに次の行を追加します。
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2002 -j ACCEPT
133.123.40.166などの特定のIPへのアクセスを制限するには、次のように行を編集します。
-A RH-Firewall-1-INPUT -s 133.123.40.166 -m state --state NEW -p tcp --dport 2002 -j ACCEPT
サイトでIPv6を使用していて、ip6tablesを編集している場合は、次の行を使用します。
-A RH-Firewall-1-INPUT -m tcp -p tcp --dport 2002 -j ACCEPT
キーボードのEscape(Esc)を押して、次のように入力して、ファイルを保存して終了します。
:X
Enterキーを押して確認します。
iptablesを再起動して、変更を適用します:
sudo systemctl restart iptables