Ubuntu 14.04サーバーにopenssh-server
のデフォルトインストールを使用しています。ユーザー名とパスワードを使用して、通常どおりrootとしてコンソールを介して接続できます。ただし、同じユーザー名/パスワードでSSHを実行しようとすると、アクセス拒否エラーが繰り返し表示されます。 /var/log/auth.log
はFailed password for root from <ip address> port <port> ssh2
を報告しますが、正しいパスワードを入力しています。
ユーザー名とパスワードが正しいのに、なぜSSH経由でサーバーに接続できないのですか?
Debian(およびUbuntu)のOpenSSHサーバーのデフォルト設定は、rootのパスワードベースのログインを拒否し、キーベースのログインのみを許可することです。 /etc/ssh/sshd_config
の次の行を変更します。
PermitRootLogin without-password
に
PermitRootLogin yes
SSHサーバーを再起動します。
Sudo service ssh restart
私にとって、変化する作品(Ubuntu 18.04):
Sudo nano /etc/ssh/sshd_config
PermitRootLogin prohibit-password
からPermitRootLogin yes
PasswordAuthentication no
からPasswordAuthentication yes
次に、sshサービスを再起動します。
Sudo service ssh restart
ありがとう!
ハッカーはルートユーザーがブルートフォースで侵入しようとするのを強打します。ルートログインを許可する場合は、必ずFail2Banまたはブルートフォース攻撃から保護するための同様のものをインストールする必要があります。また、一般的な単語を使用せずに非常に難しいパスワードを推測してください。
また、Vaindilが指摘したように、キーベースのログインははるかに優れています。セットアップはそれほど難しくありません。 WindowsでPuTTYを使用してキーベースのログインをセットアップするためのリンクを次に示します。 https://devops.profitbricks.com/tutorials/use-ssh-keys-with-PuTTY-on-windows/ ただし、ログインに別の環境を使用している場合は、他にもたくさんあります。