CentOSでrootユーザのログイン禁止~VPSのセキュリティ対策!

シェアする

サーバにログインするためには、正しいユーザ名とパスワードを入力する必要があります。

しかし、rootユーザでログインできるサーバは、パスワードだけわかればログインすることができます。

しかも、rootユーザはすべてのサーバ操作を実行できる権限を持っているので、サーバにログインした後はシステム全体を乗っ取ることができます。

つまり、rootユーザでログインできるサーバは、悪意あるユーザの標的対象となりやすく、悪意あるユーザに乗っ取られた場合の被害が大きいのです。

今回は、悪意あるユーザから自分のサーバを守るための設定として、rootユーザでサーバにログインできないようにする設定を説明します。

※以下の環境を例に説明します。

  • サーバOS:CentOS6
  • クライアントPC:Windows10
  • SSH接続ツール:RLogin

スポンサーリンク
レクタングル大

1.一般ユーザを作成する

まず、新規に一般ユーザを作成します。

サーバ操作を行いたい場合は、一般ユーザでサーバにログインして行います。

なお、一般ユーザとは、rootユーザ以外のユーザのことです。

それでは、一般ユーザを作成します。

一般ユーザを作成するには、rootユーザでログインしている必要があります。

[root@ ~]#

※ログイン方法がわからない場合は、以下の記事を参考にして下さい。

VPSの始め方!サーバの操作方法とまずはじめにすべきこと
VPSの始め方!サーバの操作方法とまずはじめにすべきこと
今回は、サーバの操作方法と、VPSを始めたらまずはじめに行うべきことについて説明します。 サーバのOSとしては、日本ではよく使われているCentO...

「useradd ユーザ名」と入力してEnterを押します。

これは、一般ユーザを作成するコマンドです。

例として、ユーザ名が「testuser」である一般ユーザを作成します。

[root@ ~]# useradd testuser

「passwd ユーザ名」と入力してEnterを押します。

これは、作成した一般ユーザのパスワードを設定するコマンドです。

例として、ユーザ名が「testuser」である一般ユーザのパスワードを設定します。

[root@ ~]# passwd testuser

パスワードの入力を求められるので、任意のパスワードを入力してEnterを押します。

なお、入力したパスワードは表示されません。

Changing password for user testuser.
New password:

再度パスワードの入力を求められるので、先ほど入力したパスワードをもう一度入力してEnterを押します。

先ほどと同様、入力したパスワードは表示されません。

Retype new password:

以下のように表示されれば、パスワードの変更は完了です。

passwd: all authentication tokens updated successfully.

これで、一般ユーザの作成とパスワードの設定が完了しました。

作成した一般ユーザでサーバにログインできることを確認します。

rootユーザをログアウトして下さい。

「exit」と入力してEnterを押します。

[root@ ~]# exit

2.一般ユーザでサーバにログインする

作成した一般ユーザでサーバにログインします。

SSH接続ツールは、「RLogin」を例に説明します。

「ファイル」→「サーバーに接続」をクリックします。

「Server Select」画面で、「新規」をクリックします。

「Server New Entry」画面で、以下の項目を入力し、画面下部の「OK」をクリックします。

  • エントリー/コメント: 任意の文字列を入力して下さい。
  • プロトコル: ssh
  • Server Address: サーバ会社から通知されたIPアドレス(※)
  • Socket Port: ssh
  • User Name: 作成した一般ユーザのユーザ名
  • Password: 作成した一般ユーザのパスワード
  • デフォルト文字セット:UTF-8

※ さくらのVPSの場合、「[さくらのVPS] 仮登録完了のお知らせ」メールにより通知されます。

「Server Select」画面で、「OK」をクリックします。

「公開鍵の確認」画面で、「接続する」をクリックします。

一般ユーザでサーバにログインできました。

[testuser@ ~]$

3.一般ユーザからrootユーザに切り替える

rootユーザの権限が必要なサーバ操作を行う場合、一般ユーザでサーバにログイン後、一般ユーザからrootユーザに切り替えて行います。

それでは、一般ユーザからrootユーザへの切り替えを行います。

一般ユーザからrootユーザへの切り替えを行うには、一般ユーザでログインしている必要があります。

以下のように、「$」が表示されていれば、一般ユーザでログインしている状態であることを表します。

[testuser@ ~]$

「su -」と入力してEnterを押します。

これは、rootユーザに切り替えるコマンドです。

[testuser@ ~]$ su -

パスワードの入力を求められるので、rootユーザのパスワードを入力してEnterを押します。

なお、入力したパスワードは表示されません。

Password:

以下のように表示されれば、rootユーザへの切り替えは完了です。

[root@ ~]#

なお、一般ユーザからrootユーザに切り替えた場合、サーバからログアウトするには「exit」を2回行う必要があります。

まず、1回目の「exit」でrootユーザをログアウトします。

[root@ ~]# exit

すると、一般ユーザに戻ります。

[testuser@ ~]$

そして、2回目の「exit」で一般ユーザをログアウトします。

[testuser@ ~]$ exit

4.rootユーザのログインを禁止する

ここまでで、新規に作成した一般ユーザでサーバにログインし、rootユーザに切り替えできることが確認できました。

それでは、rootユーザでサーバにログインできないように設定します。

rootユーザでサーバにログインできないように設定するには、rootユーザでログインしている必要があります。

[root@ ~]#

「cd /etc/ssh」と入力してEnterを押します。

これは、「etc」の下の「ssh」というフォルダへ移動するコマンドです。

なお、「cd」はフォルダを移動するコマンドです。

[root@ ~]# cd /etc/ssh

「/etc/ssh」のフォルダへ移動できました。

[root@ ssh]#

「cp sshd_config sshd_config.old」と入力してEnterを押します。

これは、「sshd_config」というファイルをコピーして「sshd_config.old」というファイルを作成するコマンドです。

なお、「cp」はファイルをコピーするコマンドです。

[root@ ssh]# cp sshd_config sshd_config.old

「sshd_config」はSSHサーバの設定ファイルです。

ここでは、編集前の「sshd_config」を別のファイル「sshd_config.old」としてコピー退避して、バックアップを行っています。

「sshd_config」を編集します。

「vim sshd_config」と入力してEnterを押します。

これは、「sshd_config」というファイルを開く、というコマンドです。

(vim = ファイルを開くコマンド)

[root@ ssh]# vim sshd_config

「sshd_config」のファイルの内容が表示されます。

ファイル中から「PermitRootLogin」の文字列を検索します。

「PermitRootLogin」はrootユーザのログインを許可するかどうかを設定する項目です。

「/PermitRootLogin」と入力してEnterを押します。

「/」は、vimで開いたファイル中から「/」の後に入力された文字列を検索するコマンドです。

/PermitRootLogin

「PermitRootLogin」の文字列に該当する箇所にカーソルがあたります。

検索を繰り返して、以下のような記載の箇所を探して下さい。

#PermitRootLogin yes

先頭の「#」はコメントアウトです。

コメントアウトは「未設定」と同様の扱いになります。

「PermitRootLogin」が未設定の場合、rootユーザのログインを許可します。

「PermitRootLogin」の設定を以下のように変更します。

  • 先頭の「#」を削除(コメントアウトを外して設定を有効化)
  • yes → no(rootユーザのログインを許可しない)
PermitRootLogin no

※設定の変更方法がわからない場合は、以下の記事を参考にして下さい。

VPSの始め方!サーバの操作方法とまずはじめにすべきこと
VPSの始め方!サーバの操作方法とまずはじめにすべきこと
今回は、サーバの操作方法と、VPSを始めたらまずはじめに行うべきことについて説明します。 サーバのOSとしては、日本ではよく使われているCentO...

「:wq」と入力してEnterを押します。

これは、ファイルを保存してvimを終了するコマンドです。

:wq

設定した内容を有効化するために、SSHサーバを再起動します。

「service sshd restart」と入力してEnterを押します。

[root@ ssh]# service sshd restart

SSHサーバの再起動が完了しました。

Stopping sshd:           [  OK  ]
Starting sshd:           [  OK  ]

rootユーザでサーバにログインできなくなったことを確認して下さい。

スポンサーリンク
レクタングル大
レクタングル大

シェアする

フォローする