summaryrefslogtreecommitdiffstats
path: root/rules
diff options
context:
space:
mode:
authorArtur Wiebe <artur@4wiebe.de>2020-11-16 20:11:13 +0100
committerMichael Olbrich <m.olbrich@pengutronix.de>2020-11-20 11:37:24 +0100
commitabfc4e40a6c5358d00a7f0e24b4b10888b7e8090 (patch)
tree6b54cb8c352faa8561892773bac9340648d24457 /rules
parent177451a5d9e20dc71a250bf5221dfab31f2d60e1 (diff)
downloadptxdist-abfc4e40a6c5358d00a7f0e24b4b10888b7e8090.tar.gz
ptxdist-abfc4e40a6c5358d00a7f0e24b4b10888b7e8090.tar.xz
openssh: make host key generation optional
If not set host keys must be provided in some other way (otherwise sshd will not start) Signed-off-by: Artur Wiebe <artur@4wiebe.de> Acked-by: Roland Hieber <rhi@pengutronix.de> Message-Id: <20201116191113.239636-1-artur@4wiebe.de> Signed-off-by: Michael Olbrich <m.olbrich@pengutronix.de>
Diffstat (limited to 'rules')
-rw-r--r--rules/openssh.in12
-rw-r--r--rules/openssh.make2
-rw-r--r--rules/openssh.postinst4
3 files changed, 15 insertions, 3 deletions
diff --git a/rules/openssh.in b/rules/openssh.in
index 09f5c5555..37013250c 100644
--- a/rules/openssh.in
+++ b/rules/openssh.in
@@ -6,10 +6,10 @@ menuconfig OPENSSH
select OPENSSL
select LIBC_CRYPT
select LIBC_UTIL
- select RC_ONCE if OPENSSH_SSHD && RUNTIME
+ select RC_ONCE if OPENSSH_SSHD_GENKEYS && RUNTIME
select BUSYBOX_START_STOP_DAEMON if OPENSSH_SSHD_STARTSCRIPT
select LIBSELINUX if GLOBAL_SELINUX
- select OPENSSH_KEYGEN if OPENSSH_SSHD
+ select OPENSSH_KEYGEN if OPENSSH_SSHD_GENKEYS
prompt "openssh "
help
secure shell client/server, an rlogin/rsh/rcp replacement
@@ -49,6 +49,14 @@ config OPENSSH_SSHD_SYSTEMD_UNIT
depends on OPENSSH_SSHD && SYSTEMD
prompt "install systemd unit files for sshd"
+config OPENSSH_SSHD_GENKEYS
+ bool "generate sshd host keys at first boot"
+ default y
+ depends on OPENSSH_SSHD
+ help
+ If not set host keys must be provided in some other way
+ (otherwise sshd will not start)
+
config OPENSSH_SCP
bool "scp"
help
diff --git a/rules/openssh.make b/rules/openssh.make
index cae04487f..99fca3f46 100644
--- a/rules/openssh.make
+++ b/rules/openssh.make
@@ -105,8 +105,10 @@ ifdef PTXCONF_OPENSSH_SSHD
/etc/ssh/moduli)
@$(call install_copy, openssh, 0, 0, 0755, -, \
/usr/sbin/sshd)
+ifdef PTXCONF_OPENSSH_SSHD_GENKEYS
@$(call install_alternative, openssh, 0, 0, 0755, /etc/rc.once.d/openssh)
endif
+endif
ifdef PTXCONF_INITMETHOD_BBINIT
ifdef PTXCONF_OPENSSH_SSHD_STARTSCRIPT
diff --git a/rules/openssh.postinst b/rules/openssh.postinst
index fcfbf9149..a7bbf1c58 100644
--- a/rules/openssh.postinst
+++ b/rules/openssh.postinst
@@ -1,2 +1,4 @@
#!/bin/sh
-$DESTDIR/usr/sbin/enable-rc-once openssh
+if [ -f $DESTDIR/etc/rc.once.d/openssh ]; then
+ $DESTDIR/usr/sbin/enable-rc-once openssh
+fi