Enable SSH root login on Debian Linux Server - LinuxConfig.org

After fresh system installation the root login on the Debian Linux is disabled by default. When you attempt to login as root user to your Debian Jessie Linux server the access will be denied eg.:
This is a companion discussion topic for the original entry at https://linuxconfig.org/enable-ssh-root-login-on-debian-linux-server

Roger Crist

I’m installing Debian v9.3 on a beaglebone black and I can’t ssh in as root. When I modify /etc/ssh/ssh_config in pico and try to save changes, I get an error “Error writing /etc/ssh/sshd_config: Permission denied”… so the fix on this page doesn’t help me. Any ideas would be very much appreciated.

OK, NM, figured it out: sudo su (enter: temppwd) . . . THEN edit the file and reboot. Done. BTW, I’m ssh’d in as ‘debian’.

Грабовой Вадим

Hi! I have same problem, but in my ‘/etc/ssh/ssh_config’ i found this line ‘#PermitRootLogin prohibit-password’, and after changing it to ‘#PermitRootLogin yes’ and restarting ssh server - still have ‘Permission denied, please try again.’ Any ideas ? I’m using Debian 8.7.1

Lubos Rendek Mod -> Грабовой Вадим

Hi, make sure that you have also remove a “#” sign. Thus change #PermitRootLogin yes’ to ‘PermitRootLogin yes’ :slight_smile:

Isytha roof -> Lubos Rendek

i’ve tried to remove # but its still denied.

Jeff Howard

I am using Debian 8 compiled for arm/beaglebone and my /etc/ssh/ssh_config doesn’t have the line ‘PermitRootLogin without-password’ and adding the line ‘PermitRootLogin yes’ followed by a ‘/etc/init.d/ssh restart’ still doesn’t allow a root login. Any ideas here?

lordtyr85 -> Jeff Howard

you opened the ssh client config, the ssh server config is sshd_config.

Vitalii Korshak -> lordtyr85

I registered an account here especially to say thank you!

Polakete -> lordtyr85

I registered an account here especially to say thank you!

AndreaS

thanks!!! it works

Term-X

It should be noted that this practice is highly discouraged and the default behavior is that way for a reason. A large number of compromised *nix servers are compromised because the root password was brute forced or guessed. One of the first things I do when setting up a server is to disable SSH password authentication completely and only rely on SSH keys which is much more secure. There are no SSH passwords to compromise or brute force then.

Jasper Kasper

Thaaank youuu!!! After 30 minutes I had find this and it works directly!!

Great guide but I am stuck with sshd_config settings on a Debian 9.3

Systemctl status ssh
It´s ok
Port 22 is open no firewall yet.

sshd_config have:
MaxSessions 5
PermitRootLogin yes
PasswordAuthentication yes
PubkeyAuthentication no

Using
ssh -vv root@xxx.xx.xxx.xx -p 22

I still get immediately “Permission denied” without get the password prompt.
Permission denied (publickey,password,keyboard-interactive).
Or
Permission denied (password).

ssh -vv root@xxx.xx.xxx.xx -p 22
So what ´s missing to enable remote ssh with root password ?

Hi Credev,

Welcome to our forums.

I have a few ideas, and some tests that you could run to get closer to the issue.

  • did you restart the ssh server after enabling root login in the configuration?
  • does ssh root@localhost work from within the machine?
  • what’s in the logs regarding the failed login?

For example, upon trying to log in via ssh with an invalid user, I get these entries in my /var/log/auth.log:

pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=127.0.0.1
sshd[3941]: Failed password for invalid user nouser from 127.0.0.1 port 57364 ssh2

Your entries will be different, but could give some hint on why are you unable to log in.

Hi sandman,

Many thanks for your help.

Yes I do systemctl restart ssh
I does work ssh root@localhost in the console
On auth.log i get “Connection Closed” just that.

Is there any way to send you the output os the ssh -vvv _

I know it sounds ridiculous at this point but do you have a correct root password? This happened to me before as the root password might not be set by default hence any attempt to login as root will fail. Reset/Set your root password with the following two commands and try again:

$ sudo -i
# passwd

Just to make sure that we have covered the basics before proceeding with more intense troubleshooting :wink:.

The problem is I never got the password prompt.
Root password is correct I am using it to login in console

This output is better…:smiley:
ssh -vvv root@xxx.xx.xxx.xx -p 22
OpenSSH_7.9p1, LibreSSL 2.7.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 55: Applying options for *
debug1: /etc/ssh/ssh_config line 59: Applying options for *
debug2: resolve_canonicalize: hostname xxx.xx.xxx.xx is address
debug2: ssh_connect_direct
debug1: Connecting to xxx.xx.xxx.xx [xxx.xx.xxx.xx] port 22.
debug1: Connection established.
debug1: identity file /Volumes/disc/user/.ssh/id_rsa type 0
debug1: identity file /Volumes/disc/user/.ssh/id_rsa-cert type -1
debug1: identity file /Volumes/disc/user/.ssh/id_dsa type -1
debug1: identity file /Volumes/disc/user/.ssh/id_dsa-cert type -1
debug1: identity file /Volumes/disc/user/.ssh/id_ecdsa type -1
debug1: identity file /Volumes/disc/user/.ssh/id_ecdsa-cert type -1
debug1: identity file /Volumes/disc/user/.ssh/id_ed25519 type -1
debug1: identity file /Volumes/disc/user/.ssh/id_ed25519-cert type -1
debug1: identity file /Volumes/disc/user/.ssh/id_xmss type -1
debug1: identity file /Volumes/disc/user/.ssh/id_xmss-cert type -1
debug1: Local version string SSH-2.0-OpenSSH_7.9
debug1: Remote protocol version 2.0, remote software version OpenSSH_7.4p1 Debian-10+deb9u2
debug1: match: OpenSSH_7.4p1 Debian-10+deb9u2 pat OpenSSH_7.0*,OpenSSH_7.1*,OpenSSH_7.2*,OpenSSH_7.3*,OpenSSH_7.4*,OpenSSH_7.5*,OpenSSH_7.6*,OpenSSH_7.7* compat 0x04000002
debug2: fd 3 setting O_NONBLOCK
debug1: Authenticating to xxx.xx.xxx.xx:22 as ‘root’
debug3: hostkeys_foreach: reading file “/Volumes/disc/user/.ssh/known_hosts"
debug3: record_hostkey: found key type ECDSA in file /Volumes/disc/user/.ssh/known_hosts:31
debug3: load_hostkeys: loaded 1 keys from xxx.xx.xxx.xx
debug3: order_hostkeyalgs: prefer hostkeyalgs: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521
debug3: send packet: type 20
debug1: SSH2_MSG_KEXINIT sent
debug3: receive packet: type 20
debug1: SSH2_MSG_KEXINIT received
debug2: local client KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1,ext-info-c
debug2: host key algorithms: ecdsa-sha2-nistp256-cert-v01@openssh.com,ecdsa-sha2-nistp384-cert-v01@openssh.com,ecdsa-sha2-nistp521-cert-v01@openssh.com,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-ed25519-cert-v01@openssh.com,rsa-sha2-512-cert-v01@openssh.com,rsa-sha2-256-cert-v01@openssh.com,ssh-rsa-cert-v01@openssh.com,ssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com,zlib
debug2: compression stoc: none,zlib@openssh.com,zlib
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug2: peer server KEXINIT proposal
debug2: KEX algorithms: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1
debug2: host key algorithms: ssh-rsa,rsa-sha2-512,rsa-sha2-256,ecdsa-sha2-nistp256,ssh-ed25519
debug2: ciphers ctos: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: ciphers stoc: chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
debug2: MACs ctos: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: MACs stoc: umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
debug2: compression ctos: none,zlib@openssh.com
debug2: compression stoc: none,zlib@openssh.com
debug2: languages ctos:
debug2: languages stoc:
debug2: first_kex_follows 0
debug2: reserved 0
debug1: kex: algorithm: curve25519-sha256
debug1: kex: host key algorithm: ecdsa-sha2-nistp256
debug1: kex: server->client cipher: chacha20-poly1305@openssh.com MAC: compression: none
debug1: kex: client->server cipher: chacha20-poly1305@openssh.com MAC: compression: none
debug3: send packet: type 30
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug3: receive packet: type 31
debug1: Server host key: ecdsa-sha2-nistp256 SHA256:vv6XfDOZzcoe3Jvo+/ufOBnl3ZVI/cn1Ym/Pz5uMsPc
debug3: hostkeys_foreach: reading file “/Volumes/disc/user/.ssh/known_hosts”
debug3: record_hostkey: found key type ECDSA in file /Volumes/disc/user/.ssh/known_hosts:31
debug3: load_hostkeys: loaded 1 keys from xxx.xx.xxx.xx
debug1: Host ‘xxx.xx.xxx.xx’ is known and matches the ECDSA host key.
debug1: Found key in /Volumes/disc/user/.ssh/known_hosts:31
debug3: send packet: type 21
debug2: set_newkeys: mode 1
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug3: receive packet: type 21
debug1: SSH2_MSG_NEWKEYS received
debug2: set_newkeys: mode 0
debug1: rekey after 134217728 blocks
debug1: Will attempt key: /Volumes/disc/user/.ssh/id_rsa RSA SHA256:
debug1: Will attempt key: /Volumes/disc/user/.ssh/id_dsa
debug1: Will attempt key: /Volumes/disc/user/.ssh/id_ecdsa
debug1: Will attempt key: /Volumes/disc/user/.ssh/id_ed25519
debug1: Will attempt key: /Volumes/disc/user/.ssh/id_xmss
debug2: pubkey_prepare: done
debug3: send packet: type 5
debug3: receive packet: type 7
debug1: SSH2_MSG_EXT_INFO received
debug1: kex_input_ext_info: server-sig-algs=<ssh-ed25519,ssh-rsa,ssh-dss,ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521>
debug3: receive packet: type 6
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug3: send packet: type 50
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug3: start over, passed a different list publickey,password,keyboard-interactive
debug3: preferred publickey,keyboard-interactive
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: /Volumes/disc/user/.ssh/id_rsa RSA SHA256
debug3: send packet: type 50
debug2: we sent a publickey packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug1: Trying private key: /Volumes/disc/user/.ssh/id_dsa
debug3: no such identity: /Volumes/disc/user/.ssh/id_dsa: No such file or directory
debug1: Trying private key: /Volumes/disc/user/.ssh/id_ecdsa
debug3: no such identity: /Volumes/disc/user/.ssh/id_ecdsa: No such file or directory
debug1: Trying private key: /Volumes/disc/user/.ssh/id_ed25519
debug3: no such identity: /Volumes/disc/user/.ssh/id_ed25519: No such file or directory
debug1: Trying private key: /Volumes/disc/user/.ssh/id_xmss
debug3: no such identity: /Volumes/disc/user/.ssh/id_xmss: No such file or directory
debug2: we did not send a packet, disable method
debug3: authmethod_lookup keyboard-interactive
debug3: remaining preferred:
debug3: authmethod_is_enabled keyboard-interactive
debug1: Next authentication method: keyboard-interactive
debug2: userauth_kbdint
debug3: send packet: type 50
debug2: we sent a keyboard-interactive packet, wait for reply
debug3: receive packet: type 51
debug1: Authentications that can continue: publickey,password,keyboard-interactive
debug3: userauth_kbdint: disable: no info_req_seen
debug2: we did not send a packet, disable method
debug1: No more authentication methods to try.
root@xxx.xxx.xxx.xxx: Permission denied (publickey,password,keyboard-interactive).

Hi Credev,

This seems like a bug. You could try update your sshd server, just in case.

Also, can you log in with another user from the same source, same client, using password authentication?