セキュアシェル(SSH)は、クライアントとサーバー間の安全な接続に使用されるネットワークプロトコルです。サーバーとクライアント間の各対話は暗号化されます。
このチュートリアルでは、UbuntuマシンでSSHを有効にする方法について説明します。
SSHを有効にすると、システムにリモートで接続して管理タスクを実行できるようになります。 scp
を介してファイルを安全に転送することもできます およびsftp
。
UbuntuでSSHを有効にする#
デフォルトでは、Ubuntuが最初にインストールされたとき、SSHを介したリモートアクセスは許可されていません。 UbuntuでSSHを有効にするのはかなり簡単です。
rootまたはsudo権限を持つユーザーとして次の手順を実行し、UbuntuシステムにSSHをインストールして有効にします。
-
Ctrl+Alt+T
でターミナルを開きますopenssh-server
をインストールします パッケージ:sudo apt update
sudo apt install openssh-server
プロンプトが表示されたら、パスワードを入力し、Enterキーを押してインストールを続行します。
-
インストールが完了すると、SSHサービスが自動的に開始されます。次のように入力して、SSHが実行されていることを確認できます。
sudo systemctl status ssh
出力には、サービスが実行中であり、システムの起動時に開始できるようになっていることが示されます。
● ssh.service - OpenBSD Secure Shell server Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-06-01 12:34:00 CEST; 9h ago ...
q
を押します コマンドラインプロンプトに戻ります。 -
Ubuntuには、UFWと呼ばれるファイアウォール構成ツールが付属しています。システムでファイアウォールが有効になっている場合は、SSHポートを開いてください:
sudo ufw allow ssh
それでおしまい!これで、任意のリモートマシンからSSH経由でUbuntuシステムに接続できます。 LinuxおよびmacOSシステムには、デフォルトでSSHクライアントがインストールされています。 Windowsマシンから接続するには、PuTTYなどのSSHクライアントを使用します。
SSHサーバーへの接続#
LAN経由でUbuntuマシンに接続するには、sshコマンドを呼び出し、その後に次の形式のユーザー名とIPアドレスを続けます。
ssh username@ip_address
必ずusername
を変更してください 実際のユーザー名とip_address
SSHをインストールしたUbuntuマシンのIPアドレスを使用します。
IPアドレスがわからない場合は、ip
を使用して簡単に見つけることができます。 コマンド:
ip a
出力からわかるように、システムIPアドレスは10.0.2.15
です。 。
IPアドレスを見つけたら、次のssh
を実行してリモートマシンにログインします。 コマンド:
ssh [email protected]
初めて接続すると、次のようなメッセージが表示されます。
The authenticity of host '10.0.2.15 (10.0.2.15)' can't be established.
ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.
Are you sure you want to continue connecting (yes/no)?
yes
と入力します パスワードの入力を求められます。
Warning: Permanently added '10.0.2.15' (ECDSA) to the list of known hosts.
[email protected]'s password:
パスワードを入力すると、デフォルトのUbuntuメッセージが表示されます:
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)
* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
...
これで、Ubuntuマシンにログインしました。
インターネット経由で自宅のUbuntuマシンに接続するには、パブリックIPアドレスを知っている必要があり、ポート22でデータを受け入れ、SSHが実行されているUbuntuシステムに送信するようにルーターを構成する必要があります。
SSHを使用しようとしているマシンのパブリックIPアドレスを確認するには、次のURLにアクセスしてください:https://api.ipify.org
。
ポートフォワーディングの設定に関しては、ルーターごとにポートフォワーディングの設定方法が異なります。ポートフォワーディングの設定方法については、ルーターのドキュメントを参照してください。つまり、リクエストが行われるポート番号(デフォルトのSSHポートは22)と以前に見つけたプライベートIPアドレス(ip a
を使用)を入力する必要があります コマンド)SSHが実行されているマシンの。
IPアドレスを見つけてルーターを設定したら、次のように入力してログインできます。
ssh username@public_ip_address
マシンをインターネットに公開している場合は、いくつかのセキュリティ対策を実装することをお勧めします。最も基本的な方法は、非標準ポートでSSHトラフィックを受け入れ、SSHサービスを実行しているマシンのポート22に転送するようにルーターを構成することです。
SSHキーベースの認証を設定し、パスワードを入力せずにUbuntuマシンに接続することもできます。
UbuntuでSSHを無効にする#
UbuntuシステムでSSHサーバーを無効にするには、次のコマンドを実行してSSHサービスを停止します。
sudo systemctl disable --now ssh
後で再度有効にするには、次のように入力します:
sudo systemctl enable --now ssh