Debian 11 Bullseye
Sponsored Link

OpenSSH : パスワード認証
2021/08/17
 
SSH サーバーを構成し、リモート端末からサーバーに接続して操作できるようにします。なお、SSH は 22/TCP を使用します。
[1] Debian の OpenSSH サーバーはデフォルトでパスワード認証方式でのログインは可能となっています。 さらに root ユーザーのみに関しては [PermitRootLogin prohibit-password] と設定されており、パスワード認証は禁止となっています。 よって、デフォルトのままでも最低限必要な設定はしてある状態ですが、root ユーザーの SSH ログインを一切禁止するのであれば、以下のように設定を変更しておけばよいでしょう。
root@dlp:~#
apt -y install openssh-server
root@dlp:~#
vi /etc/ssh/sshd_config
# 34行目 : [no] に変更すると root ログイン一切禁止

PermitRootLogin
no
root@dlp:~#
systemctl restart ssh

SSH クライアントの設定 : Debian
 
SSH クライアントの設定です。Debian を例にします。
[2] SSH クライアントをインストールします。
root@client:~#
apt -y install openssh-client
[3] 任意の一般ユーザーで SSH サーバーに接続します。
# ssh [ログインユーザー@ホスト名 または IP アドレス]

root@client:~#
ssh debian@dlp.srv.world

The authenticity of host 'dlp.srv.world (10.0.0.30)' can't be established.
ECDSA key fingerprint is SHA256:v+78HzsV/tLAYycjkp2snBRU1VI5YU3xW8gpiQyCnwQ.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'dlp.srv.world,10.0.0.30' (ECDSA) to the list of known hosts.
debian@dlp.srv.world's password:
Linux dlp.srv.world 5.10.0-8-amd64 #1 SMP Debian 5.10.46-4 (2021-08-03) x86_64
.....
.....

debian@dlp:~$    
# ログインできた

[4] SSH コマンドの引数にコマンドを指定することで、リモートホストで任意のコマンドが実行可能です。
# 例としてリモートホストの [/etc/passwd] を [cat] する

debian@client:~$
ssh debian@dlp.srv.world "cat /etc/passwd"

debian@dlp.srv.world's password:
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
.....
.....
SSH クライアントの設定 : Windows #1
 
SSH クライアントの設定です。Windows を例にします。
[5]
Windows クライアント側で SSH クライアント ソフトウェアを用意します。
一般的には TeraTerm (sourceforge.jp/projects/ttssh2/) や Putty (www.chiark.greenend.org.uk/~sgtatham/putty/) 等が有名です。
当例では Putty を使用します。
Putty をダウンロード/インストールして起動後、以下の画面で、 [Host Name] にサーバーの ホスト名または IP アドレスを入力し [Open] ボタンをクリックします。
[6] ユーザー名とパスワードを入力して認証すると、以下のように Debian サーバーに SSH でリモートログインすることができます。
SSH クライアントの設定 : Windows #2
[7] Windows 10 (1803 以降) の場合は、OpenSSH クライアントが標準で実装されています。 これにより、Putty 等の SSH クライアントを用意しなくとも、Windows の標準機能で SSH サーバーへ接続可能です。 なお、OpenSSH のため、操作方法は [3], [4] の Debian クライアントと同様です。
関連コンテンツ