UbuntuサーバへのSSH接続設定
Ubuntuがインストールされたサーバ(マシン)へSSH接続するための設定方法を説明します。 この記事では、サーバ側/クライアント側の設定方法に注目して説明します。
サーバ側設定
Ubuntu(サーバ側)はデフォルトでSSHが無効になっており、接続しようとすると以下のようなエラーが出ることがあります。
% ssh xxx.xxx.xxx.xxx
ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused
このような場合、サーバ側(Ubuntu)で以下の操作を行い、SSHを有効にする必要があります。
openssh-serverをインストールする
以下のコマンドを実行し、open-sshをインストールします。
sudo apt update
sudo apt install openssh-serveropen-sshが実行されていることを確認する。
openssh-serverはインストールされると自動で実行されます。 以下のコマンドを入力して、実行されていることを確認しましょう。
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 Tue 2022-11-01 10:53:56 JST; 8min ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 28499 (sshd)
Tasks: 1 (limit: 19018)
Memory: 4.1M
CPU: 109ms
CGroup: /system.slice/ssh.service
└─28499 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"
クライアント側の操作・設定
以下のコマンドを実行し、サーバ(Ubuntu)にSSH接続します。
ssh xxx.xxx.xxx.xxx
エラーが出る場合
サーバ移行後などに、以下のようなエラーが出る場合があります
$ ssh xxx.xxx.xxx.xxx
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX.
Please contact your system administrator.
Add correct host key in /Users/xxxxxxxxx/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /Users/xxxxxxxxx/.ssh/known_hosts:3
Host key for xxx.xxx.xxx.xxx has changed and you have requested strict checking.
Host key verification failed.
これは、移行前サーバの鍵情報が残っていることなどが原因です。 以下の手順で鍵情報を削除してから再度SSH接続してみましょう。
鍵情報の削除
ssh-keygen -R xxx.xxx.xxx.xxx
SSH接続する
SSH接続すると、以下のような表示が出るので
yes
と入力しEnterキーを押します。% ssh xxx.xxx.xxx.xxx
The authenticity of host 'xxx.xxx.xxx.xxx (xxx.xxx.xxx.xxx)' can't be established.
ED25519 key fingerprint is xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
This key is not known by any other names
Are you sure you want to continue connecting (yes/no/[fingerprint])? yesその後、再度sshコマンドを打つとssh接続できます。
ssh xxx.xxx.xxx.xxx
参考文献
なし