add socket activated sshd units to the package (#963268)

This commit is contained in:
Petr Lautrbach 2013-05-21 18:37:18 +02:00
parent f5022aa5ae
commit 678b8081f1
3 changed files with 20 additions and 16 deletions

View File

@ -85,6 +85,7 @@ Source7: sshd.sysconfig
Source9: sshd@.service Source9: sshd@.service
Source10: sshd.socket Source10: sshd.socket
Source11: sshd.service Source11: sshd.service
Source12: sshd-keygen.service
Source13: sshd-keygen Source13: sshd-keygen
# Internal debug # Internal debug
@ -305,11 +306,6 @@ into and executing commands on a remote machine. This package contains
the secure shell daemon (sshd). The sshd daemon allows SSH clients to the secure shell daemon (sshd). The sshd daemon allows SSH clients to
securely connect to your SSH server. securely connect to your SSH server.
# %description server-ondemand
# OpenSSH is a free version of SSH (Secure SHell), a program for logging
# into and executing commands on a remote machine. This package contains
# the systemd unit files to run an ondemand (socket activated) SSH server.
%description server-sysvinit %description server-sysvinit
OpenSSH is a free version of SSH (Secure SHell), a program for logging OpenSSH is a free version of SSH (Secure SHell), a program for logging
into and executing commands on a remote machine. This package contains into and executing commands on a remote machine. This package contains
@ -560,9 +556,10 @@ install -m755 %{SOURCE3} $RPM_BUILD_ROOT/etc/rc.d/init.d/sshd
install -m644 %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/sshd install -m644 %{SOURCE7} $RPM_BUILD_ROOT/etc/sysconfig/sshd
install -m755 %{SOURCE13} $RPM_BUILD_ROOT/%{_sbindir}/sshd-keygen install -m755 %{SOURCE13} $RPM_BUILD_ROOT/%{_sbindir}/sshd-keygen
install -d -m755 $RPM_BUILD_ROOT/%{_unitdir} install -d -m755 $RPM_BUILD_ROOT/%{_unitdir}
# install -m644 %{SOURCE9} $RPM_BUILD_ROOT/%{_unitdir}/sshd@.service install -m644 %{SOURCE9} $RPM_BUILD_ROOT/%{_unitdir}/sshd@.service
# install -m644 %{SOURCE10} $RPM_BUILD_ROOT/%{_unitdir}/sshd.socket install -m644 %{SOURCE10} $RPM_BUILD_ROOT/%{_unitdir}/sshd.socket
install -m644 %{SOURCE11} $RPM_BUILD_ROOT/%{_unitdir}/sshd.service install -m644 %{SOURCE11} $RPM_BUILD_ROOT/%{_unitdir}/sshd.service
install -m644 %{SOURCE12} $RPM_BUILD_ROOT/%{_unitdir}/sshd-keygen.service
install -m755 contrib/ssh-copy-id $RPM_BUILD_ROOT%{_bindir}/ install -m755 contrib/ssh-copy-id $RPM_BUILD_ROOT%{_bindir}/
install contrib/ssh-copy-id.1 $RPM_BUILD_ROOT%{_mandir}/man1/ install contrib/ssh-copy-id.1 $RPM_BUILD_ROOT%{_mandir}/man1/
@ -601,10 +598,10 @@ getent passwd sshd >/dev/null || \
-s /sbin/nologin -r -d /var/empty/sshd sshd 2> /dev/null || : -s /sbin/nologin -r -d /var/empty/sshd sshd 2> /dev/null || :
%post server %post server
%systemd_post sshd.service %systemd_post sshd.service sshd.socket
%preun server %preun server
%systemd_preun sshd.service %systemd_preun sshd.service sshd.socket
%postun server %postun server
%systemd_postun_with_restart sshd.service %systemd_postun_with_restart sshd.service
@ -677,11 +674,9 @@ getent passwd sshd >/dev/null || \
%attr(0644,root,root) %config(noreplace) /etc/pam.d/sshd %attr(0644,root,root) %config(noreplace) /etc/pam.d/sshd
%attr(0640,root,root) %config(noreplace) /etc/sysconfig/sshd %attr(0640,root,root) %config(noreplace) /etc/sysconfig/sshd
%attr(0644,root,root) %{_unitdir}/sshd.service %attr(0644,root,root) %{_unitdir}/sshd.service
%attr(0644,root,root) %{_unitdir}/sshd@.service
# %files server-ondemand %attr(0644,root,root) %{_unitdir}/sshd.socket
# %defattr(-,root,root) %attr(0644,root,root) %{_unitdir}/sshd-keygen.service
# %attr(0644,root,root) %{_unitdir}/sshd@.service
# %attr(0644,root,root) %{_unitdir}/sshd.socket
%files server-sysvinit %files server-sysvinit
%defattr(-,root,root) %defattr(-,root,root)

8
sshd-keygen.service Normal file
View File

@ -0,0 +1,8 @@
[Unit]
Description=OpenSSH Server Key Generation
ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key
ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key
[Service]
ExecStart=/usr/sbin/sshd-keygen
Type=oneshot

View File

@ -1,8 +1,9 @@
[Unit] [Unit]
Description=OpenSSH per-connection server daemon Description=OpenSSH per-connection server daemon
After=syslog.target auditd.service Wants=sshd-keygen.service
After=auditd.service sshd-keygen.service
[Service] [Service]
EnvironmentFile=/etc/sysconfig/sshd EnvironmentFile=-/etc/sysconfig/sshd
ExecStart=-/usr/sbin/sshd -i $OPTIONS ExecStart=-/usr/sbin/sshd -i $OPTIONS
StandardInput=socket StandardInput=socket