From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH 2/7] package/busybox: add /bin/ash to /etc/shells
Date: Sun, 14 Jan 2018 23:43:50 +0100 [thread overview]
Message-ID: <20180114224350.GI16760@scaer> (raw)
In-Reply-To: <1515963815-5843-3-git-send-email-romain.naour@smile.fr>
Romain, All,
On 2018-01-14 22:03 +0100, Romain Naour spake thusly:
> When ash (busybox) is selected, /bin/ash is not added to /etc/shells
> (see man shells). So, login tools like dropbear reject the ssh
> connexions for users using ash as shell in /etc/passwd.
>
> buildroot authpriv.warn dropbear[853]: User 'kubu' has invalid shell, rejected
>
> ash is disabled for MMUless systems, so don't add /bin/ash in
> /etc/shells in this case.
>
> Signed-off-by: Romain Naour <romain.naour@smile.fr>
> ---
> package/busybox/busybox.mk | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/package/busybox/busybox.mk b/package/busybox/busybox.mk
> index d0bbd3f..37d064a 100644
> --- a/package/busybox/busybox.mk
> +++ b/package/busybox/busybox.mk
> @@ -258,6 +258,15 @@ define BUSYBOX_INSTALL_TELNET_SCRIPT
> fi
> endef
>
> +# Add /bin/ash to /etc/shells otherwise some login tools like dropbear
> +# can reject the user connexion. See man shells.
> +ifeq ($(BR2_USE_MMU),y)
> +define BUSYBOX_INSTALL_ADD_ASH_TO_SHELLS
> + grep -qsE '^/bin/ash' $(TARGET_DIR)/etc/shells \
> + || echo "/bin/ash" >> $(TARGET_DIR)/etc/shells
What if the user uses a custom config file where ash is not enabled?
What about the other shells busybox may install?
define BUSYBOX_INSTALL_ADD_TO_SHELLS
if grep -qsE '^CONFIG_ASH=y$$' $(@D)/.config; then
grep -qsE '^/bin/ash' $(TARGET_DIR)/etc/shells \
|| echo "/bin/ash" >> $(TARGET_DIR)/etc/shells; \
fi
if grep -qsE '^CONFIG_HUSH=y$$' $(@D)/.config; then
grep -qsE '^/bin/hush' $(TARGET_DIR)/etc/shells \
|| echo "/bin/hush" >> $(TARGET_DIR)/etc/shells; \
fi
if grep -qsE '^CONFIG_MSH=y$$' $(@D)/.config; then
grep -qsE '^/bin/msh' $(TARGET_DIR)/etc/shells \
|| echo "/bin/msh" >> $(TARGET_DIR)/etc/shells; \
fi
endef
(msh is just an alias for hush, but it can be a shell nonethless...)
Regards,
Yann E. MORIN.
> +endef
> +endif
> +
> # 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 +300,7 @@ define BUSYBOX_INSTALL_TARGET_CMDS
> $(BUSYBOX_INSTALL_INITTAB)
> $(BUSYBOX_INSTALL_UDHCPC_SCRIPT)
> $(BUSYBOX_INSTALL_MDEV_CONF)
> + $(BUSYBOX_INSTALL_ADD_ASH_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. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2018-01-14 22:43 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-14 21:03 [Buildroot] [PATCH 0/7] Add /etc/shells handling Romain Naour
2018-01-14 21:03 ` [Buildroot] [PATCH 1/7] package/skeleton-init-common: add /bin/sh to /etc/shells Romain Naour
2018-01-14 22:51 ` Yann E. MORIN
2018-01-15 14:41 ` Peter Korsgaard
2018-01-15 17:06 ` Yann E. MORIN
2018-01-14 21:03 ` [Buildroot] [PATCH 2/7] package/busybox: add /bin/ash " Romain Naour
2018-01-14 22:43 ` Yann E. MORIN [this message]
2018-01-17 15:17 ` Romain Naour
2018-01-14 21:03 ` [Buildroot] [PATCH 3/7] package/dash: add /etc/dash " Romain Naour
2018-01-14 22:26 ` Yann E. MORIN
2018-01-14 21:03 ` [Buildroot] [PATCH 4/7] package/screen: add /usr/bin/screen " Romain Naour
2018-01-14 22:29 ` Yann E. MORIN
2018-01-14 22:36 ` Yann E. MORIN
2018-01-14 21:03 ` [Buildroot] [PATCH 5/7] package/tmux: add /usr/bin/tmux " Romain Naour
2018-01-14 22:30 ` Yann E. MORIN
2018-01-14 21:03 ` [Buildroot] [PATCH 6/7] package/zsh: add /bin/zsh " Romain Naour
2018-01-14 22:34 ` Yann E. MORIN
2018-01-14 21:03 ` [Buildroot] [PATCH 7/7] package/mksh: add /bin/mksh " Romain Naour
2018-01-14 22:37 ` Yann E. MORIN
2018-01-15 10:35 ` Thomas Petazzoni
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=20180114224350.GI16760@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.