OpenSSH : パスワード認証2019/04/22 |
SSHサーバーを構成し、リモート端末からサーバーに接続して操作できるようにします。なお、SSH は 22/TCP を使用します。
|
|
[1] | Ubuntu の OpenSSH サーバーはデフォルトでパスワード認証方式でのログインは可能となっています。 さらに root ユーザーのみに関しては「PermitRootLogin prohibit-password」と設定されており、パスワード認証は禁止となっています。 よって、デフォルトのままでも最低限必要な設定は済の状態ですが、root ユーザーの SSH ログインを一切禁止するのであれば、以下のように設定を変更しておけばよいでしょう。 |
root@dlp:~#
apt -y install openssh-server
root@dlp:~#
vi /etc/ssh/sshd_config # 32行目:no に変更してrootログイン一切禁止 PermitRootLogin no
systemctl restart ssh |
SSHクライアントの設定 : Ubuntu
|
SSH クライアントの設定です。Ubuntu を例にします。
|
|
[2] | SSH クライアントをインストールします。 |
root@client:~# apt -y install openssh-client
|
[3] | 任意の一般ユーザーで SSH サーバーに接続します。 |
# ssh [ログインユーザー@ホスト名 または IP アドレス] root@client:~# ssh ubuntu@dlp.srv.world
The authenticity of host 'dlp.srv.world (10.0.0.30)' can't be established.
ECDSA key fingerprint is SHA256:Bn/D10zqeCQS17Cm3s2Th1dsZ4zcwdtxt6fwo6KigR0.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'dlp.srv.world,10.0.0.30' (ECDSA) to the list of known hosts.
ubuntu@dlp.srv.world's password:
Welcome to Ubuntu 19.04 (GNU/Linux 5.0.0-13-generic x86_64)
.....
.....
ubuntu@dlp:~$ # ログインできた |
[4] | SSH コマンドの引数にコマンドを指定することで、リモートホストで任意のコマンドが実行可能です。 |
# 例としてリモートホストの /etc/passwd を cat する ubuntu@client:~$ ssh ubuntu@dlp.srv.world "cat /etc/passwd" ubuntu@dlp.srv.world's password: root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin ... ... ubuntu:x:1000:1000:ubuntu,,,:/home/ubuntu:/bin/bash sshd:x:108:65534::/var/run/sshd:/usr/sbin/nologin |
SSHクライアントの設定 : Windows#1
|
SSH クライアントの設定です。Windows を例にします。
|
|
[5] |
Windows クライアント側で SSH で接続可能なソフトウェアを用意します。
一般的には TeraTerm Pro や
Putty 等が有名です。
当例では Putty を使用します。
Putty を上記サイトからダウンロード/インストールして起動したら、以下のような画面になるので、
Hostname にサーバーの ホスト名または IP アドレスを入力し [Open] をクリックして接続します。
|
[6] | ユーザー名とパスワードを入力して認証すると、以下のように Ubuntu サーバーにリモートログインすることができます。 |
SSHクライアントの設定 : Windows #2
|
[7] | Windows 10 バージョン 1803 以降であれば OpenSSH クライアントが実装されています。 これにより、Putty 等の SSH クライアントを用意しなくとも、Windows の標準機能で SSH サーバーへ接続可能です。 |
Sponsored Link |