Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 2/8] package/busybox: add /bin/{a, hu}sh to /etc/shells
Date: Wed, 17 Jan 2018 19:48:12 +0100	[thread overview]
Message-ID: <20180117184812.GC11009@scaer> (raw)
In-Reply-To: <1516211058-466-3-git-send-email-romain.naour@smile.fr>

Romain, All,

On 2018-01-17 18:44 +0100, Romain Naour spake thusly:
> When ash (busybox) is selected, /bin/{a,hu}sh is not added to /etc/shells
> (see man shells). So, login tools like dropbear reject the ssh
> connexions for users using {a,hu}sh as shell in /etc/passwd.
> 
> buildroot authpriv.warn dropbear[853]: User 'kubu' has invalid shell, rejected
> 
> Signed-off-by: Romain Naour <romain.naour@smile.fr>

Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>

Yet, a comment, see below...

> ---
> v2: add double-dollar after /bin/{a,hu}sh (Yann)
>     add hush handling
>     msh has been removed from Busybox 1.28
>     https://git.busybox.net/busybox/commit/?id=2e989ef232e35750df573898077dd356003705b2
>     msh is unlikely used.
> ---
>  package/busybox/busybox.mk | 14 ++++++++++++++
>  1 file changed, 14 insertions(+)
> 
> diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
> index d0bbd3f..1865306 100644
> --- a/package/busybox/busybox.mk
> +++ b/package/busybox/busybox.mk
> @@ -258,6 +258,19 @@ define BUSYBOX_INSTALL_TELNET_SCRIPT
>  	fi
>  endef
>  
> +# Add /bin/{a,hu}sh to /etc/shells otherwise some login tools like dropbear
> +# can reject the user connexion. See man shells.
> +define BUSYBOX_INSTALL_ADD_TO_SHELLS
> +	if grep -q CONFIG_ASH=y $(@D)/.config; then \

Idealy, I would have also ensured that the pattern is anchored to the
beining (and end) of the line:

    if grep -qsE '^CONFIG_ASH=y$$' $(@D)/.config; then \

But in practice, I don't think it is necessary. Hence my acked-by.

> +		grep -qsE '^/bin/ash$$' $(TARGET_DIR)/etc/shells \
> +		|| echo "/bin/ash" >> $(TARGET_DIR)/etc/shells; \
> +	fi
> +	if grep -q CONFIG_HUSH=y $(@D)/.config; then \

Ditto.

Regards,
Yann E. MORIN.

> +		grep -qsE '^/bin/hush$$' $(TARGET_DIR)/etc/shells \
> +		|| echo "/bin/hush" >> $(TARGET_DIR)/etc/shells; \
> +	fi
> +endef
> +
>  # Enable "noclobber" in install.sh, to prevent BusyBox from overwriting any
>  # full-blown versions of apps installed by other packages with sym/hard links.
>  define BUSYBOX_NOCLOBBER_INSTALL
> @@ -291,6 +304,7 @@ define BUSYBOX_INSTALL_TARGET_CMDS
>  	$(BUSYBOX_INSTALL_INITTAB)
>  	$(BUSYBOX_INSTALL_UDHCPC_SCRIPT)
>  	$(BUSYBOX_INSTALL_MDEV_CONF)
> +	$(BUSYBOX_INSTALL_ADD_TO_SHELLS)
>  endef
>  
>  define BUSYBOX_INSTALL_INIT_SYSV
> -- 
> 2.7.4
> 
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'

  reply	other threads:[~2018-01-17 18:48 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-01-17 17:44 [Buildroot] [PATCH v2 0/8] Add /etc/shells handling Romain Naour
2018-01-17 17:44 ` [Buildroot] [PATCH v2 1/8] package/skeleton-init-common: add /bin/sh to /etc/shells Romain Naour
2018-01-17 18:44   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 2/8] package/busybox: add /bin/{a, hu}sh " Romain Naour
2018-01-17 18:48   ` Yann E. MORIN [this message]
2018-01-17 17:44 ` [Buildroot] [PATCH v2 3/8] package/dash: add /etc/dash " Romain Naour
2018-01-17 19:19   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 4/8] package/screen: add /usr/bin/screen " Romain Naour
2018-01-17 19:25   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 5/8] package/tmux: add /usr/bin/tmux " Romain Naour
2018-01-17 19:25   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 6/8] package/zsh: add /bin/zsh " Romain Naour
2018-01-17 19:26   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 7/8] package/mksh: add /bin/mksh " Romain Naour
2018-01-17 19:29   ` Yann E. MORIN
2018-01-17 17:44 ` [Buildroot] [PATCH v2 8/8] package/bash: add missing double-dollar for /etc/shells Romain Naour
2018-01-17 19:30   ` Yann E. MORIN

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20180117184812.GC11009@scaer \
    --to=yann.morin.1998@free.fr \
    --cc=buildroot@busybox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox