From: Mingli Yu <[email protected]>

For systems with a large amount of SSH traffic, it shoule be better to
run a single SSH server for all incoming connections.

And both sshd.socket and sshd.service are deployed on other distros
like ubuntu, fedora and etc.

So add sshd.service to make it possible to run a standalone SSH server.

Signed-off-by: Mingli Yu <[email protected]>
---
 .../openssh/openssh/sshd.service                | 17 +++++++++++++++++
 .../openssh/openssh_9.4p1.bb                    |  4 +++-
 2 files changed, 20 insertions(+), 1 deletion(-)
 create mode 100644 meta/recipes-connectivity/openssh/openssh/sshd.service

diff --git a/meta/recipes-connectivity/openssh/openssh/sshd.service 
b/meta/recipes-connectivity/openssh/openssh/sshd.service
new file mode 100644
index 0000000000..6ace67d8ae
--- /dev/null
+++ b/meta/recipes-connectivity/openssh/openssh/sshd.service
@@ -0,0 +1,17 @@
+[Unit]
+Description=OpenSSH server daemon
+Wants=sshdgenkeys.service
+After=sshdgenkeys.service
+
+[Service]
+Environment="SSHD_OPTS="
+EnvironmentFile=-/etc/default/ssh
+ExecStartPre=/usr/bin/mkdir -p /var/run/sshd
+ExecStart=-@SBINDIR@/sshd -D $SSHD_OPTS
+ExecReload=@BASE_BINDIR@/kill -HUP $MAINPID
+KillMode=process
+Restart=on-failure
+RestartSec=42s
+
+[Install]
+WantedBy=multi-user.target
diff --git a/meta/recipes-connectivity/openssh/openssh_9.4p1.bb 
b/meta/recipes-connectivity/openssh/openssh_9.4p1.bb
index e2508aa63a..3ef83a2219 100644
--- a/meta/recipes-connectivity/openssh/openssh_9.4p1.bb
+++ b/meta/recipes-connectivity/openssh/openssh_9.4p1.bb
@@ -16,6 +16,7 @@ SRC_URI = 
"http://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar
            file://ssh_config \
            file://init \
            ${@bb.utils.contains('DISTRO_FEATURES', 'pam', '${PAM_SRC_URI}', 
'', d)} \
+           file://sshd.service \
            file://sshd.socket \
            file://[email protected] \
            file://sshdgenkeys.service \
@@ -48,7 +49,7 @@ INITSCRIPT_NAME:${PN}-sshd = "sshd"
 INITSCRIPT_PARAMS:${PN}-sshd = "defaults 9"
 
 SYSTEMD_PACKAGES = "${PN}-sshd"
-SYSTEMD_SERVICE:${PN}-sshd = "sshd.socket"
+SYSTEMD_SERVICE:${PN}-sshd = "sshd.socket sshd.service"
 
 inherit autotools-brokensep ptest
 
@@ -122,6 +123,7 @@ do_install:append () {
 
        install -d ${D}${systemd_system_unitdir}
        install -c -m 0644 ${WORKDIR}/sshd.socket ${D}${systemd_system_unitdir}
+       install -c -m 0644 ${WORKDIR}/sshd.service ${D}${systemd_system_unitdir}
        install -c -m 0644 ${WORKDIR}/[email protected] 
${D}${systemd_system_unitdir}
        install -c -m 0644 ${WORKDIR}/sshdgenkeys.service 
${D}${systemd_system_unitdir}
        sed -i -e 's,@BASE_BINDIR@,${base_bindir},g' \
-- 
2.25.1

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#188983): 
https://lists.openembedded.org/g/openembedded-core/message/188983
Mute This Topic: https://lists.openembedded.org/mt/101913305/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to