セキュリティ上よくありませんが、rootユーザー・パスワードでリモートログインする方法です。
rootユーザーのパスワード認証なんて絶対にやるもんじゃありません。でも少ないながらも使う機会はあります。
忘れてもいいことだし、すぐ忘れることなので備忘録です。
リモートログインにはsshを使いますが、普通、rootユーザーはキー認証でログインします。パスワード認証はしません。パスワードが漏れてしまうとコンピュータ全体が危険だからです。
ただ、Vagrantなどのローカル環境ではrootユーザーのリモートログインが必要になることが多いです。
ローカルはテスト環境で使うことが多く、/etcなどにあるroot権限のファイルを編集することも多いので。
ということで、サクッとパスワード認証を許可しちゃいます。
こんなこと、絶対にやってはいけない方法のひとつです。むやみに真似しないでください。とくに運用環境では。
rootユーザーのパスワード設定
バーチャル環境のイメージファイルなどで、CentOSの初期設定ではrootパスワードが未設定のときもあります。
(一般ユーザーの sudo su で代用している。)
なので、まずrootユーザーにパスワードを設定します。sudo suでroot権限にしておいてください。
passwd
ユーザー root のパスワードを変更。
新しいパスワード:
passwdコマンドで設定します。
(ユーザー名を省略するとrootユーザー。)
CentOS内だけのroot作業ならsudo suでもいいですが、ファイル転送でrootユーザーログインが必要になることもあります。
sshdの設定変更
今度は、rootユーザーのパスワード認証でリモートログインを許可しましょう。
リモートまわりはsshdサービスが管理しているので、その設定ファイルを変更します。
PermitRootLogin yes
PasswordAuthentication yes
(ssh_configという似たファイルがあるので注意。編集するのは sshd_config)
sshdサービスを更新します。
systemctl reload sshd
再起動(restart)でもいいですが、設定ファイルを更新(reload)します。
終わりです。
何度も言いますが、普通この方法はやってはいけません。覚えなくていいです。
やるとしたらsshキー認証でしましょう。
rootログイン、パスワード認証を禁止する
逆に、rootのリモートログインを禁止するときは
PermitRootLogin no
一般ユーザーも含めてマシン全体でパスワード認証を禁止するときは
PasswordAuthentication no
にします。