未解決中。 一通り設定を終えたら、戻ってきて更新します。
(作業内容)
1.SSHでログインする一般ユーザを作成する。
第一回では、鍵認証によりSSHでサーバーへ、'root'という権限でログインしました。
この'roo'は、サーバー管理者権限が付与されている為、各種のサーバー設定を変更できる、
大変重要なアカウントです。
ログインしたアカウントが、そのまま管理者権限を持っているのは危険なので、ログインしたアカウントから、別の管理者アカウントに切り替えないかぎり、アカウント権限を使えなくするよう、新しいアカウントを追加します。
①ログインに使用する新しいアカウントを作成する。
以下のコマンドを実行するだけです。
・アカウント作成
# adduser (新しいアカウント名)
・新しいアカウントに対するパスワード設定
#passwd (新しいアカウント名)
[root@mk1ouin8 ~]# adduser (新しいアカウント名)
[root@mk1ouin8 ~]# passwd (新しいアカウント名)
Changing password for user (新しいアカウント名)
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
Apache(httpd)の再起動で、設定を有効にします。
[root@mk1ouin8 ~]# systemctl restart httpd
一度、ログアウトして、再びSSHで新しく追加したアカウントで接続できるか確認します。
Tera Termであれば、ユーザ名に、今まで ’root’ と記入していましたが、代わりに
新しく登録したユーザ名を記入してログインしてみてください。
なんと、ログインできません。
そこで、考察になります。
一般に、VPSサーバーなどのへのログイン認証は、サーバー管理者が自由に設定可能です。
ベーシックなパスワード認証の代わりに、鍵認証を管理者が自分で設定することも可能です。
自分で鍵認証を導入する場合の手順は、
① ローカル側で、秘密鍵、公開鍵のペアを作成。
② サーバー側への公開鍵の受け渡し。
③ サーバー側での公開鍵の保存。
となります。
さて、現時点でWebArena のVPSでの設定状況を確認してみます。
一般に、公開鍵はルートディレクトリの.sshディレクトリに、authorized_keysというファイルとして保存されます。 開いてみると、単にランダムな文字列であるキーが、現在、保存されていることが分かります。(ここにあるのは、管理ポータルで作成された公開鍵)
以下で、公開鍵が保管されていることを確認。
[root@mk1ouin8 /]# find -name authorized_keys -type f
./root/.ssh/authorized_keys
[root@mk1ouin8 /]# cd ./root/.ssh/
[root@mk1ouin8 .ssh]# vi authorized_keys
ssh-rsa AAAAB3Nza ****公開鍵のテキスト情報文字列*****R0Cbw==
*vi とは、vimと言われるCUI上でのテキスト・ファイル・エディターを開始するコマンドです。
使い方はいろいろありますが、上記で開いてしまった場合、カーソルの場所に拘らず、
:q と入力してもらえれば、vimの編集モードからexitできます。
次に、ユーザー名でのパスワード認証を管理しているssh_config/sshd_configの内容を
確認します。
[root@mk1ouin8 .ssh]# cd /etc/ssh
[root@mk1ouin8 ssh]# ls -l
total 612
-rw-r--r--. 1 root root 581843 Aug 7 2017 moduli
-rw-r--r--. 1 root root 2276 Aug 7 2017 ssh_config
-rw-------. 1 root root 3917 May 23 2018 sshd_config
--以下、省略--
[root@mk1ouin8 ssh]# vi sshd_config
[root@mk1ouin8 ssh]# vi sshd_config
# $OpenBSD: sshd_config,v 1.100 2016/08/15 12:32:04 naddy Exp $
# This is the sshd server system-wide configuration file. See
# sshd_config(5) for more information.
# This sshd was compiled with PATH=/usr/local/bin:/usr/bin
# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented. Uncommented options override the
# default value.
# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
#
#Port 22
#AddressFamily any
#ListenAddress 0.0.0.0
#ListenAddress ::
#HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_dsa_key
"sshd_config" 139L, 3917C
すると、Port番号のセキュリティー設定は、SELinuxでコントロールされている旨の記載があります。
WebArenaの管理ポータルで設定したフィルタリングは、SELinuxに反映されているのでしょうか?
SELinux : Secured Enhanced Linux
米国国家安全省? (NSA :National Security Agency)ご指定のセキュリティーレベル強化版Linuxで
検索すると、色々と挙動をおかしくするので、無効にすることをお勧めされるサイトが沢山でてくる。
そういうものは、さっさと無効にしたのですが、WebArenaの管理コンソールが、SELinuxを直接設定するように設定されているとすると、うかつに無効にできません。
SELinuxの状態確認
[root@mk1ouin8 ~]# sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: enforcing
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 28
なので、
この手順を試します。
https://qiita.com/QUENCH/items/818d719ceb746823c71c
*追加ユーザの確認
[root@mk1ouin8 ~]# cut -d: -f1 /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
operator
games
ftp
nobody
avahi-autoipd
systemd-bus-proxy
systemd-network
dbus
polkitd
tss
postfix
sshd
chrony
saslauth
apache
vpsuser
[root@mk1ouin8 ~]# su vpsuser
[vpsuser@mk1ouin8 root]$
ハイフン「-」を付けると、環境変数を引き継がずに他のユーザーに切り替えることができます。「-」を付けない場合は、「USER」と「LOGNAME」以外のすべての環境変数が、切り替え後のユーザーにも引き継がれます。
作成したユーザの為に公開鍵を入れるディレクトリ、ファイルを作成
[root@mk1ouin8 /]# cd home/vpsuser
[root@mk1ouin8 vpsuser]# mkdir .ssh
[root@mk1ouin8 vpsuser]# chmod 0700 .ssh
[root@mk1ouin8 vpsuser]# touch .ssh/authorized_keys
[root@mk1ouin8 vpsuser]# chmod 0400 .ssh/authorized_keys
[root@mk1ouin8 vpsuser]# ls .ssh/authorized_keys -l
-r--------. 1 root root 0 Dec 13 20:24 .ssh/authorized_keys
[root@mk1ouin8 vpsuser]# chown -R vpsuser:vpsuser .ssh/authorized_keys
[root@mk1ouin8 vpsuser]# ls .ssh/authorized_keys -l
-r--------. 1 vpsuser vpsuser 0 Dec 13 20:24 .ssh/authorized_keys
公開鍵のコピー
作成したユーザーにも同じ鍵をコピーします。
[root@mk1ouin8 vpsuser]# cd /
[root@mk1ouin8 /]# cp /root/.ssh/authorized_keys /home/vpsuser/.ssh/authorized_keys
cp: overwrite ‘/home/vpsuser/.ssh/authorized_keys’? y
[root@mk1ouin8 /]# cat /home/vpsuser/.ssh/authorized_keys
ssh-rsa AAA ==公開鍵 テキスト Cbw==
さてさて、これでもアクセスできませんね。
0 件のコメント:
コメントを投稿