[OpenWrt-Devel] [LEDE-DEV] [PATCH v1 1/1] openssh: disable passwords for openssh server

Philip Prindeville philipp_subx at redfish-solutions.com
Wed Feb 14 14:23:26 EST 2018

> On Feb 14, 2018, at 1:06 AM, Yousong Zhou <yszhou4tech at gmail.com> wrote:
> On 14 February 2018 at 11:53, Philip Prindeville
> <philipp_subx at redfish-solutions.com> wrote:
>>> On Feb 11, 2018, at 3:54 AM, Yousong Zhou <yszhou4tech at gmail.com> wrote:
>>> On 9 February 2018 at 08:28, Philip Prindeville
>>> <philipp at redfish-solutions.com> wrote:
>>>> From: Philip Prindeville <philipp at redfish-solutions.com>
>>>> Allowing password logins leaves you vulnerable to dictionary
>>>> attacks.  We disable password-based authentication, limiting
>>>> authentication to keys only which are more secure.
>>>> Note: You'll need to pre-populate your image with some initial
>>>> keys. To do this:
>>>> 1. Create the appropriate directory as "mkdir -p files/root/.ssh"
>>>>  from your top-level directory;
>>>> 2. Copy your "~/.ssh/id_rsa.pub" (or as appropriate) into
>>>>  "files/root/.ssh/authorized_keys" and indeed, you can collect
>>>>  keys from several sources this way by concatenating them;
>>>> 3. Set the permissions on "authorized_keys" to 644 or 640.
>>> If forgetting doing this means I may need physical connection like vga
>>> monitor or serial connection to "unlock" the device, very likely I
>>> will hate this security enforcement...  It's just the inconvenience
>>> regardless of whether the said situation should happen.  As a user I'd
>>> like to keep this level of convenience as using password
>>> authentication and turn it off when I see it appropriate.
>>>               yousong
>> Well, we’re at an impasse because some people have said “this should be the new norm and it’s a mistake not to disable it unconditionally” and others have said the opposite, “yes, okay, let’s do this but only as an option”.
>> So I’m happy to go other way but we should reach a consensus.
>> What if it *is* an option but depends on a virtual package that takes a value (like CONFIG_SSH_PUBLIC_KEYS) and squirts that into the /root/.ssh/authorized_keys file.
>> Would that work for everyone?
>> You could still lock yourself out of a box by (a) mis-formatting the keys or (b) getting the wrong public keys that don’t match your installed private keys, but getting this to be absolutely foolproof is a fool's errand.
>> So what constitutes “good enough”?
>> -Philip
> No, it's just complicating things up.  When people really cares about
> the default settings' security, the will override the default by also
> specifying files/etc/ssh/sshd_config besides
> files/root/.ssh/authorized_keys.  No need to pass on such complexity
> as virtual packages and another config options for others.
>                yousong

The problem with that is that if OpenSSH gets updated upstream, including changing the configuration file to address a CVE, I don’t want to keep installing a slightly mangled snapshot of a now-obsolete and vulnerable configuration.

That’s just exchanging one liability for another.

openwrt-devel mailing list
openwrt-devel at lists.openwrt.org

More information about the openwrt-devel mailing list