3 %bcond_without audit # sshd audit support
4 %bcond_with gnome # with gnome-askpass (GNOME 1.x) utility
5 %bcond_without gtk # without GTK+ (2.x)
6 %bcond_without ldap # with ldap support
7 %bcond_without libedit # without libedit (editline/history support in sftp client)
8 %bcond_without kerberos5 # without kerberos5 support
9 %bcond_without selinux # build without SELinux support
10 %bcond_with hpn # High Performance SSH/SCP - HPN-SSH including Cipher NONE (broken too often)
13 # gtk2-based gnome-askpass means no gnome1-based
14 %{?with_gtk:%undefine with_gnome}
16 %if "%{pld_release}" == "ac"
17 %define pam_ver 0.79.0
19 %define pam_ver 1:1.1.5-5
22 Summary: OpenSSH free Secure Shell (SSH) implementation
23 Summary(de.UTF-8): OpenSSH - freie Implementation der Secure Shell (SSH)
24 Summary(es.UTF-8): Implementación libre de SSH
25 Summary(fr.UTF-8): Implémentation libre du shell sécurisé OpenSSH (SSH)
26 Summary(it.UTF-8): Implementazione gratuita OpenSSH della Secure Shell
27 Summary(pl.UTF-8): Publicznie dostępna implementacja bezpiecznego shella (SSH)
28 Summary(pt.UTF-8): Implementação livre OpenSSH do protocolo 'Secure Shell' (SSH)
29 Summary(pt_BR.UTF-8): Implementação livre do SSH
30 Summary(ru.UTF-8): OpenSSH - свободная реализация протокола Secure Shell (SSH)
31 Summary(uk.UTF-8): OpenSSH - вільна реалізація протоколу Secure Shell (SSH)
37 Group: Applications/Networking
38 Source0: ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/%{name}-%{version}.tar.gz
39 # Source0-md5: 3c9347aa67862881c5da3f3b1c08da7b
40 Source1: http://www.mif.pg.gda.pl/homepages/ankry/man-PLD/%{name}-non-english-man-pages.tar.bz2
41 # Source1-md5: 66943d481cc422512b537bcc2c7400d1
42 Source2: %{name}d.init
43 Source3: %{name}d.pamd
44 Source4: %{name}.sysconfig
46 Source6: ssh-agent.conf
47 Source7: %{name}-lpk.schema
48 Source8: %{name}d.upstart
52 Source12: sshd@.service
53 Patch100: %{name}-heimdal.patch
54 Patch0: %{name}-no_libnsl.patch
55 Patch2: %{name}-pam_misc.patch
56 Patch3: %{name}-sigpipe.patch
57 # http://pkgs.fedoraproject.org/gitweb/?p=openssh.git;a=tree
58 Patch4: %{name}-5.9p1-ldap.patch
59 Patch5: %{name}-5.9p1-ldap-fixes.patch
60 Patch8: ldap.conf.patch
61 Patch6: %{name}-config.patch
62 # https://bugzilla.mindrot.org/show_bug.cgi?id=1663
63 Patch7: authorized-keys-command.patch
64 # High Performance SSH/SCP - HPN-SSH - http://www.psc.edu/networking/projects/hpn-ssh/
65 # http://www.psc.edu/networking/projects/hpn-ssh/openssh-5.2p1-hpn13v6.diff.gz
66 Patch9: %{name}-5.2p1-hpn13v6.diff
67 Patch10: %{name}-include.patch
68 Patch11: %{name}-chroot.patch
69 # http://people.debian.org/~cjwatson/%{name}-blacklist.diff
70 Patch12: %{name}-blacklist.diff
71 Patch13: %{name}-kuserok.patch
72 Patch14: %{name}-bind.patch
73 URL: http://www.openssh.com/portable.html
74 BuildRequires: %{__perl}
75 %{?with_audit:BuildRequires: audit-libs-devel}
76 BuildRequires: autoconf >= 2.50
77 BuildRequires: automake
78 %{?with_gnome:BuildRequires: gnome-libs-devel}
79 %{?with_gtk:BuildRequires: gtk+2-devel}
80 %{?with_kerberos5:BuildRequires: heimdal-devel >= 0.7}
81 %{?with_libedit:BuildRequires: libedit-devel}
82 %{?with_selinux:BuildRequires: libselinux-devel}
83 BuildRequires: libwrap-devel
84 %{?with_ldap:BuildRequires: openldap-devel}
85 BuildRequires: openssl-devel >= 0.9.7d
86 BuildRequires: pam-devel
87 %{?with_gtk:BuildRequires: pkgconfig}
88 BuildRequires: rpm >= 4.4.9-56
89 BuildRequires: rpmbuild(macros) >= 1.627
90 BuildRequires: sed >= 4.0
91 BuildRequires: zlib-devel
92 %if "%{pld_release}" == "ac"
93 Requires: filesystem >= 2.0-1
94 Requires: pam >= 0.79.0
96 Requires: filesystem >= 3.0-11
97 Requires: pam >= %{pam_ver}
98 Suggests: openssh-blacklist
99 Suggests: xorg-app-xauth
102 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
104 %define _sysconfdir /etc/ssh
105 %define _libexecdir %{_libdir}/%{name}
106 %define _privsepdir /usr/share/empty
107 %define schemadir /usr/share/openldap/schema
110 Ssh (Secure Shell) a program for logging into a remote machine and for
111 executing commands in a remote machine. It is intended to replace
112 rlogin and rsh, and provide secure encrypted communications between
113 two untrusted hosts over an insecure network. X11 connections and
114 arbitrary TCP/IP ports can also be forwarded over the secure channel.
116 OpenSSH is OpenBSD's rework of the last free version of SSH, bringing
117 it up to date in terms of security and features, as well as removing
118 all patented algorithms to seperate libraries (OpenSSL).
120 This package includes the core files necessary for both the OpenSSH
121 client and server. To make this package useful, you should also
122 install openssh-clients, openssh-server, or both.
125 This release includes High Performance SSH/SCP patches from
126 http://www.psc.edu/networking/projects/hpn-ssh/ which are supposed to
127 increase throughput on fast connections with high RTT (20-150 msec).
128 See the website for '-w' values for your connection and /proc/sys TCP
129 values. BTW. in a LAN you have got generally RTT < 1 msec.
132 %description -l de.UTF-8
133 OpenSSH (Secure Shell) stellt den Zugang zu anderen Rechnern her. Es
134 ersetzt telnet, rlogin, rexec und rsh und stellt eine sichere,
135 verschlüsselte Verbindung zwischen zwei nicht vertrauenswürdigen Hosts
136 über eine unsicheres Netzwerk her. X11 Verbindungen und beliebige
137 andere TCP/IP Ports können ebenso über den sicheren Channel
138 weitergeleitet werden.
140 %description -l es.UTF-8
141 SSH es un programa para accesar y ejecutar órdenes en computadores
142 remotos. Sustituye rlogin y rsh, y suministra un canal de comunicación
143 seguro entre dos servidores en una red insegura. Conexiones X11 y
144 puertas TCP/IP arbitrárias también pueden ser usadas por el canal
147 OpenSSH es el resultado del trabajo del equipo de OpenBSD para
148 continuar la última versión gratuita de SSH, actualizándolo en
149 términos de seguridad y recursos,así también eliminando todos los
150 algoritmos patentados y colocándolos en bibliotecas separadas
153 Este paquete contiene "port" para Linux de OpenSSH. Se debe instalar
154 también el paquete openssh-clients u openssh-server o ambos.
156 %description -l fr.UTF-8
157 OpenSSH (Secure Shell) fournit un accès à un système distant. Il
158 remplace telnet, rlogin, rexec et rsh, tout en assurant des
159 communications cryptées securisées entre deux hôtes non fiabilisés sur
160 un réseau non sécurisé. Des connexions X11 et des ports TCP/IP
161 arbitraires peuvent également être transmis sur le canal sécurisé.
163 %description -l it.UTF-8
164 OpenSSH (Secure Shell) fornisce l'accesso ad un sistema remoto.
165 Sostituisce telnet, rlogin, rexec, e rsh, e fornisce comunicazioni
166 sicure e crittate tra due host non fidati su una rete non sicura. Le
167 connessioni X11 ad una porta TCP/IP arbitraria possono essere
168 inoltrate attraverso un canale sicuro.
170 %description -l pl.UTF-8
171 Ssh (Secure Shell) to program służący do logowania się na zdalną
172 maszynę i uruchamiania na niej aplikacji. W zamierzeniu openssh ma
173 zastąpić rlogin, rsh i dostarczyć bezpieczne, szyfrowane połączenie
174 pomiędzy dwoma hostami.
176 Ten pakiet zawiera podstawowe pliki potrzebne zarówno po stronie
177 klienta jak i serwera OpenSSH. Aby był użyteczny, trzeba zainstalować
178 co najmniej jeden z pakietów: openssh-clients lub openssh-server.
181 Ta wersja zawiera łaty z projektu High Performance SSH/SCP
182 http://www.psc.edu/networking/projects/hpn-ssh/, które mają na celu
183 zwiększenie przepustowości transmisji dla szybkich połączeń z dużym
184 RTT (20-150 msec). Na stronie projektu znaleźć można odpowednie dla
185 danego połączenia wartości parametru '-w' oraz opcje /proc/sys dla
186 TCP. Nawiasem mówiąc w sieciach LAN RTT < 1 msec.
189 %description -l pt.UTF-8
190 OpenSSH (Secure Shell) fornece acesso a um sistema remoto. Substitui o
191 telnet, rlogin, rexec, e o rsh e fornece comunicações seguras e
192 cifradas entre duas máquinas sem confiança mútua sobre uma rede
193 insegura. Ligações X11 e portos TCP/IP arbitrários também poder ser
194 reenviados pelo canal seguro.
196 %description -l pt_BR.UTF-8
197 SSH é um programa para acessar e executar comandos em máquinas
198 remotas. Ele substitui rlogin e rsh, e provem um canal de comunicação
199 seguro entre dois hosts em uma rede insegura. Conexões X11 e portas
200 TCP/IP arbitrárias também podem ser usadas pelo canal seguro.
202 OpenSSH é o resultado do trabalho da equipe do OpenBSD em continuar a
203 última versão gratuita do SSH, atualizando-o em termos de segurança e
204 recursos, assim como removendo todos os algoritmos patenteados e
205 colocando-os em bibliotecas separadas (OpenSSL).
207 Esse pacote contém o "port" pra Linux do OpenSSH. Você deve instalar
208 também ou o pacote openssh-clients, ou o openssh-server, ou ambos.
210 %description -l ru.UTF-8
211 Ssh (Secure Shell) - это программа для "захода" (login) на удаленную
212 машину и для выполнения команд на удаленной машине. Она предназначена
213 для замены rlogin и rsh и обеспечивает безопасную шифрованную
214 коммуникацию между двумя хостами в сети, являющейся небезопасной.
215 Соединения X11 и любые порты TCP/IP могут также быть проведены через
218 OpenSSH - это переделка командой разработчиков OpenBSD последней
219 свободной версии SSH, доведенная до современного состояния в терминах
220 уровня безопасности и поддерживаемых возможностей. Все патентованные
221 алгоритмы вынесены в отдельные библиотеки (OpenSSL).
223 Этот пакет содержит файлы, необходимые как для клиента, так и для
224 сервера OpenSSH. Вам нужно будет установить еще openssh-clients,
225 openssh-server, или оба пакета.
227 %description -l uk.UTF-8
228 Ssh (Secure Shell) - це програма для "заходу" (login) до віддаленої
229 машини та для виконання команд на віддаленій машині. Вона призначена
230 для заміни rlogin та rsh і забезпечує безпечну шифровану комунікацію
231 між двома хостами в мережі, яка не є безпечною. З'єднання X11 та
232 довільні порти TCP/IP можуть також бути проведені через безпечний
235 OpenSSH - це переробка командою розробників OpenBSD останньої вільної
236 версії SSH, доведена до сучасного стану в термінах рівня безпеки та
237 підтримуваних можливостей. Всі патентовані алгоритми винесені до
238 окремих бібліотек (OpenSSL).
240 Цей пакет містить файли, необхідні як для клієнта, так і для сервера
241 OpenSSH. Вам потрібно буде ще встановити openssh-clients,
242 openssh-server, чи обидва пакети.
245 Summary: OpenSSH Secure Shell protocol clients
246 Summary(es.UTF-8): Clientes de OpenSSH
247 Summary(pl.UTF-8): Klienci protokołu Secure Shell
248 Summary(pt_BR.UTF-8): Clientes do OpenSSH
249 Summary(ru.UTF-8): OpenSSH - клиенты протокола Secure Shell
250 Summary(uk.UTF-8): OpenSSH - клієнти протоколу Secure Shell
251 Group: Applications/Networking
253 Provides: ssh-clients
254 Obsoletes: ssh-clients
257 Ssh (Secure Shell) a program for logging into a remote machine and for
258 executing commands in a remote machine. It is intended to replace
259 rlogin and rsh, and provide secure encrypted communications between
260 two untrusted hosts over an insecure network. X11 connections and
261 arbitrary TCP/IP ports can also be forwarded over the secure channel.
263 OpenSSH is OpenBSD's rework of the last free version of SSH, bringing
264 it up to date in terms of security and features, as well as removing
265 all patented algorithms to seperate libraries (OpenSSL).
267 This package includes the clients necessary to make encrypted
268 connections to SSH servers.
270 %description clients -l es.UTF-8
271 Este paquete incluye los clientes que se necesitan para hacer
272 conexiones codificadas con servidores SSH.
274 %description clients -l pl.UTF-8
275 Ssh (Secure Shell) to program służący do logowania się na zdalną
276 maszynę i uruchamiania na niej aplikacji. W zamierzeniu openssh ma
277 zastąpić rlogin, rsh i dostarczyć bezpieczne, szyfrowane połączenie
278 pomiędzy dwoma hostami.
280 Ten pakiet zawiera klientów służących do łączenia się z serwerami SSH.
282 %description clients -l pt_BR.UTF-8
283 Esse pacote inclui os clientes necessários para fazer conexões
284 encriptadas com servidores SSH.
286 %description clients -l ru.UTF-8
287 Ssh (Secure Shell) - это программа для "захода" (login) на удаленную
288 машину и для выполнения команд на удаленной машине.
290 Этот пакет содержит программы-клиенты, необходимые для установления
291 зашифрованных соединений с серверами SSH.
293 %description clients -l uk.UTF-8
294 Ssh (Secure Shell) - це програма для "заходу" (login) до віддаленої
295 машини та для виконання команд на віддаленій машині.
297 Цей пакет містить програми-клієнти, необхідні для встановлення
298 зашифрованих з'єднань з серверами SSH.
300 %package clients-agent-profile_d
301 Summary: OpenSSH Secure Shell agent init script
302 Summary(pl.UTF-8): Skrypt startowy agenta OpenSSH
303 Group: Applications/Networking
304 Requires: %{name}-clients = %{epoch}:%{version}-%{release}
306 %description clients-agent-profile_d
307 profile.d scripts for starting SSH agent.
309 %description clients-agent-profile_d -l pl.UTF-8
310 Skrypty profile.d do uruchamiania agenta SSH.
312 %package clients-agent-xinitrc
313 Summary: OpenSSH Secure Shell agent init script
314 Summary(pl.UTF-8): Skrypt inicjujący agenta ssh przez xinitrc
315 Group: Applications/Networking
316 Requires: %{name}-clients-agent-profile_d = %{epoch}:%{version}-%{release}
319 %description clients-agent-xinitrc
320 xinitrc scripts for starting SSH agent.
322 %description clients-agent-xinitrc -l pl.UTF-8
323 Skrypty xinitrc do uruchamiania agenta SSH.
326 Summary: OpenSSH Secure Shell protocol server (sshd)
327 Summary(de.UTF-8): OpenSSH Secure Shell Protocol-Server (sshd)
328 Summary(es.UTF-8): Servidor OpenSSH para comunicaciones codificadas
329 Summary(fr.UTF-8): Serveur de protocole du shell sécurisé OpenSSH (sshd)
330 Summary(it.UTF-8): Server OpenSSH per il protocollo Secure Shell (sshd)
331 Summary(pl.UTF-8): Serwer protokołu Secure Shell (sshd)
332 Summary(pt.UTF-8): Servidor do protocolo 'Secure Shell' OpenSSH (sshd)
333 Summary(pt_BR.UTF-8): Servidor OpenSSH para comunicações encriptadas
334 Summary(ru.UTF-8): OpenSSH - сервер протокола Secure Shell (sshd)
335 Summary(uk.UTF-8): OpenSSH - сервер протоколу Secure Shell (sshd)
336 Group: Networking/Daemons
337 Requires(post): /sbin/chkconfig
339 Requires(post,preun): /sbin/chkconfig
340 Requires(postun): /usr/sbin/userdel
341 Requires(pre): /bin/id
342 Requires(pre): /usr/sbin/useradd
343 Requires(post,preun,postun): systemd-units >= 38
344 Requires: %{name} = %{epoch}:%{version}-%{release}
345 # remove in 6.0, kept for flawless upgrade
346 Requires: %{name}-server-ldap = %{epoch}:%{version}-%{release}
347 Requires: pam >= %{pam_ver}
348 Requires: rc-scripts >= 0.4.3.0
349 Requires: systemd-units >= 38
356 Ssh (Secure Shell) a program for logging into a remote machine and for
357 executing commands in a remote machine. It is intended to replace
358 rlogin and rsh, and provide secure encrypted communications between
359 two untrusted hosts over an insecure network. X11 connections and
360 arbitrary TCP/IP ports can also be forwarded over the secure channel.
362 OpenSSH is OpenBSD's rework of the last free version of SSH, bringing
363 it up to date in terms of security and features, as well as removing
364 all patented algorithms to seperate libraries (OpenSSL).
366 This package contains the secure shell daemon. The sshd is the server
367 part of the secure shell protocol and allows ssh clients to connect to
370 %description server -l de.UTF-8
371 Dieses Paket installiert den sshd, den Server-Teil der OpenSSH.
373 %description server -l es.UTF-8
374 Este paquete contiene el servidor SSH. sshd es la parte servidor del
375 protocolo secure shell y permite que clientes ssh se conecten a su
378 %description server -l fr.UTF-8
379 Ce paquetage installe le 'sshd', partie serveur de OpenSSH.
381 %description server -l it.UTF-8
382 Questo pacchetto installa sshd, il server di OpenSSH.
384 %description server -l pl.UTF-8
385 Ssh (Secure Shell) to program służący do logowania się na zdalną
386 maszynę i uruchamiania na niej aplikacji. W zamierzeniu openssh ma
387 zastąpić rlogin, rsh i dostarczyć bezpieczne, szyfrowane połączenie
388 pomiędzy dwoma hostami.
390 Ten pakiet zawiera serwer sshd (do którego mogą łączyć się klienci
393 %description server -l pt.UTF-8
394 Este pacote intala o sshd, o servidor do OpenSSH.
396 %description server -l pt_BR.UTF-8
397 Esse pacote contém o servidor SSH. O sshd é a parte servidor do
398 protocolo secure shell e permite que clientes ssh se conectem ao seu
401 %description server -l ru.UTF-8
402 Ssh (Secure Shell) - это программа для "захода" (login) на удаленную
403 машину и для выполнения команд на удаленной машине.
405 Этот пакет содержит sshd - "демон" Secure Shell. sshd - это серверная
406 часть протокола Secure Shell, позволяющая клиентам ssh соединяться с
409 %description server -l uk.UTF-8
410 Ssh (Secure Shell) - це програма для "заходу" (login) до віддаленої
411 машини та для виконання команд на віддаленій машині.
413 Цей пакет містить sshd - "демон" Secure Shell. sshd - це серверна
414 частина протоколу Secure Shell, яка дозволяє клієнтам ssh зв'язуватись
418 Summary: A LDAP support for open source SSH server daemon
419 Summary(pl.UTF-8): Wsparcie LDAP dla serwera OpenSSH
421 Requires: %{name} = %{epoch}:%{version}-%{release}
423 %description server-ldap
424 OpenSSH LDAP backend is a way how to distribute the authorized tokens
425 among the servers in the network.
427 %description server-ldap -l pl.UTF-8
428 Backend LDAP dla OpenSSH to metoda rozprowadzania autoryzowanych
429 tokenów między serwerami w sieci.
431 %package server-upstart
432 Summary: Upstart job description for OpenSSH server
433 Summary(pl.UTF-8): Opis zadania Upstart dla serwera OpenSSH
435 Requires: %{name}-server = %{epoch}:%{version}-%{release}
436 Requires: upstart >= 0.6
437 Conflicts: syslog-ng < 3.2.4-1
439 %description server-upstart
440 Upstart job description for OpenSSH.
442 %description server-upstart -l pl.UTF-8
443 Opis zadania Upstart dla OpenSSH.
445 %package gnome-askpass
446 Summary: OpenSSH GNOME passphrase dialog
447 Summary(de.UTF-8): OpenSSH GNOME Passwort-Dialog
448 Summary(es.UTF-8): Diálogo para introducción de passphrase para GNOME
449 Summary(fr.UTF-8): Dialogue pass-phrase GNOME d'OpenSSH
450 Summary(it.UTF-8): Finestra di dialogo GNOME per la frase segreta di OpenSSH
451 Summary(pl.UTF-8): Odpytywacz hasła OpenSSH dla GNOME
452 Summary(pt.UTF-8): Diálogo de pedido de senha para GNOME do OpenSSH
453 Summary(pt_BR.UTF-8): Diálogo para entrada de passphrase para GNOME
454 Summary(ru.UTF-8): OpenSSH - диалог ввода ключевой фразы (passphrase) для GNOME
455 Summary(uk.UTF-8): OpenSSH - діалог вводу ключової фрази (passphrase) для GNOME
456 Group: Applications/Networking
457 Requires: %{name} = %{epoch}:%{version}-%{release}
458 Obsoletes: openssh-askpass
459 Obsoletes: ssh-askpass
460 Obsoletes: ssh-extras
462 %description gnome-askpass
463 Ssh (Secure Shell) a program for logging into a remote machine and for
464 executing commands in a remote machine. It is intended to replace
465 rlogin and rsh, and provide secure encrypted communications between
466 two untrusted hosts over an insecure network. X11 connections and
467 arbitrary TCP/IP ports can also be forwarded over the secure channel.
469 OpenSSH is OpenBSD's rework of the last free version of SSH, bringing
470 it up to date in terms of security and features, as well as removing
471 all patented algorithms to seperate libraries (OpenSSL).
473 This package contains the GNOME passphrase dialog.
475 %description gnome-askpass -l es.UTF-8
476 Este paquete contiene un programa que abre una caja de diálogo para
477 entrada de passphrase en GNOME.
479 %description gnome-askpass -l pl.UTF-8
480 Ssh (Secure Shell) to program służący do logowania się na zdalną
481 maszynę i uruchamiania na niej aplikacji. W zamierzeniu openssh ma
482 zastąpić rlogin, rsh i dostarczyć bezpieczne, szyfrowane połączenie
483 pomiędzy dwoma hostami.
485 Ten pakiet zawiera ,,odpytywacz hasła'' dla GNOME.
487 %description gnome-askpass -l pt_BR.UTF-8
488 Esse pacote contém um programa que abre uma caixa de diálogo para
489 entrada de passphrase no GNOME.
491 %description gnome-askpass -l ru.UTF-8
492 Ssh (Secure Shell) - это программа для "захода" (login) на удаленную
493 машину и для выполнения команд на удаленной машине.
495 Этот пакет содержит диалог ввода ключевой фразы для использования под
498 %description gnome-askpass -l uk.UTF-8
499 Ssh (Secure Shell) - це програма для "заходу" (login) до віддаленої
500 машини та для виконання команд на віддаленій машині.
502 Цей пакет містить діалог вводу ключової фрази для використання під
505 %package -n openldap-schema-openssh-lpk
506 Summary: OpenSSH LDAP Public Key schema
507 Summary(pl.UTF-8): Schemat klucza publicznego LDAP dla OpenSSH
508 Group: Networking/Daemons
509 Requires(post,postun): sed >= 4.0
510 Requires: openldap-servers
512 %description -n openldap-schema-openssh-lpk
513 This package contains OpenSSH LDAP Public Key schema for openldap.
515 %description -n openldap-schema-openssh-lpk -l pl.UTF-8
516 Ten pakiet zawiera schemat klucza publicznego LDAP dla OpenSSH dla
521 %{?with_kerberos5:%patch100 -p1}
530 %{?with_hpn:%patch9 -p1}
537 %if "%{pld_release}" == "ac"
538 # fix for missing x11.pc
539 %{__sed} -i -e '/pkg-config/s/ x11//' contrib/Makefile
542 # hack since arc4random from openbsd-compat needs symbols from libssh and vice versa
543 sed -i -e 's#-lssh -lopenbsd-compat#-lssh -lopenbsd-compat -lssh#g' Makefile*
545 grep -rl /usr/libexec/openssh/ssh-ldap-helper . | xargs \
546 %{__sed} -i -e 's,/usr/libexec/openssh/ssh-ldap-helper,%{_libexecdir}/ssh-ldap-helper,'
549 cp /usr/share/automake/config.sub .
560 %{?with_audit:--with-audit=linux} \
561 --with-ipaddr-display \
562 %{?with_kerberos5:--with-kerberos5=/usr} \
563 --with-ldap%{!?with_ldap:=no} \
564 %{?with_libedit:--with-libedit} \
566 --with-md5-passwords \
568 --with-authorized-keys-command \
569 --with-pid-dir=%{_localstatedir}/run \
570 --with-privsep-path=%{_privsepdir} \
571 %{?with_selinux:--with-selinux} \
572 --with-tcp-wrappers \
573 %if "%{pld_release}" == "ac"
574 --with-xauth=/usr/X11R6/bin/xauth
576 --with-xauth=%{_bindir}/xauth
579 echo '#define LOGIN_PROGRAM "/bin/login"' >>config.h
583 %{?with_tests:%{__make} tests}
587 %{__make} gnome-ssh-askpass1 \
588 CC="%{__cc} %{rpmldflags} %{rpmcflags}"
591 %{__make} gnome-ssh-askpass2 \
592 CC="%{__cc} %{rpmldflags} %{rpmcflags}"
596 rm -rf $RPM_BUILD_ROOT
597 install -d $RPM_BUILD_ROOT{%{_sysconfdir},/etc/{init,pam.d,rc.d/init.d,sysconfig,security,env.d}} \
598 $RPM_BUILD_ROOT{%{_libexecdir}/ssh,%{schemadir},%{systemdunitdir}}
599 install -d $RPM_BUILD_ROOT/etc/{profile.d,X11/xinit/xinitrc.d}
602 DESTDIR=$RPM_BUILD_ROOT
604 bzip2 -dc %{SOURCE1} | tar xf - -C $RPM_BUILD_ROOT%{_mandir}
606 cp -p %{SOURCE3} sshd.pam
607 install -p %{SOURCE2} sshd.init
609 %if "%{pld_release}" == "ac"
610 # not present in ac, no point searching it
611 %{__sed} -i -e '/pam_keyinit.so/d' sshd.pam
612 # openssl on ac does not have OPENSSL_HAS_ECC
613 %{__sed} -i -e '/ecdsa/d' sshd.init
616 install -p sshd.init $RPM_BUILD_ROOT/etc/rc.d/init.d/sshd
617 cp -p sshd.pam $RPM_BUILD_ROOT/etc/pam.d/sshd
618 cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/sysconfig/sshd
619 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/profile.d
620 ln -sf /etc/profile.d/ssh-agent.sh $RPM_BUILD_ROOT/etc/X11/xinit/xinitrc.d/ssh-agent.sh
621 cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}
622 cp -p %{SOURCE7} $RPM_BUILD_ROOT%{schemadir}
623 cp -p %{SOURCE8} $RPM_BUILD_ROOT/etc/init/sshd.conf
625 %{__sed} -e 's|@@LIBEXECDIR@@|%{_libexecdir}|g' %{SOURCE9} >$RPM_BUILD_ROOT%{systemdunitdir}/sshd.service
626 cp -p %{SOURCE10} $RPM_BUILD_ROOT%{_libexecdir}/sshd-keygen
628 cp -p %{SOURCE11} $RPM_BUILD_ROOT%{systemdunitdir}
629 cp -p %{SOURCE12} $RPM_BUILD_ROOT%{systemdunitdir}
632 install -p contrib/gnome-ssh-askpass1 $RPM_BUILD_ROOT%{_libexecdir}/ssh/ssh-askpass
635 install -p contrib/gnome-ssh-askpass2 $RPM_BUILD_ROOT%{_libexecdir}/ssh/ssh-askpass
637 %if %{with gnome} || %{with gtk}
638 cat << 'EOF' >$RPM_BUILD_ROOT/etc/env.d/GNOME_SSH_ASKPASS_GRAB_SERVER
639 #GNOME_SSH_ASKPASS_GRAB_SERVER="true"
641 cat << 'EOF' >$RPM_BUILD_ROOT/etc/env.d/GNOME_SSH_ASKPASS_GRAB_POINTER
642 #GNOME_SSH_ASKPASS_GRAB_POINTER="true"
644 ln -s %{_libexecdir}/ssh/ssh-askpass $RPM_BUILD_ROOT%{_libexecdir}/ssh-askpass
647 install -p contrib/ssh-copy-id $RPM_BUILD_ROOT%{_bindir}
648 cp -p contrib/ssh-copy-id.1 $RPM_BUILD_ROOT%{_mandir}/man1
650 %{__rm} $RPM_BUILD_ROOT%{_mandir}/man1/slogin.1
651 echo ".so ssh.1" > $RPM_BUILD_ROOT%{_mandir}/man1/slogin.1
653 touch $RPM_BUILD_ROOT/etc/security/blacklist.sshd
655 cat << 'EOF' > $RPM_BUILD_ROOT/etc/env.d/SSH_ASKPASS
656 #SSH_ASKPASS="%{_libexecdir}/ssh-askpass"
659 %{__rm} $RPM_BUILD_ROOT%{_mandir}/README.openssh-non-english-man-pages
660 %{__rm} $RPM_BUILD_ROOT%{_sysconfdir}/ldap.conf
663 rm -rf $RPM_BUILD_ROOT
674 %postun gnome-askpass
678 %useradd -P %{name}-server -u 40 -d %{_privsepdir} -s /bin/false -c "OpenSSH PrivSep User" -g nobody sshd
681 /sbin/chkconfig --add sshd
682 %service sshd reload "OpenSSH Daemon"
683 if ! grep -qs ssh /etc/security/passwd.conf ; then
685 echo "ssh" >> /etc/security/passwd.conf
688 %systemd_post sshd.service
691 if [ "$1" = "0" ]; then
693 /sbin/chkconfig --del sshd
695 %systemd_preun sshd.service
698 if [ "$1" = "0" ]; then
703 %triggerpostun server -- %{name}-server < 2:5.9p1-8
704 # lpk.patch to ldap.patch
705 if grep -qE '^(UseLPK|Lpk)' %{_sysconfdir}/sshd_config; then
706 echo >&2 "Migrating LPK patch to LDAP patch"
707 cp -f %{_sysconfdir}/sshd_config{,.rpmorig}
709 # disable old configs
710 # just UseLPK/LkpLdapConf supported for now
711 s/^UseLPK/## Obsolete &/
712 s/^Lpk/## Obsolete &/
713 # Enable new ones, assumes /etc/ldap.conf defaults, see HOWTO.ldap-keys
714 /UseLPK/iAuthorizedKeysCommand %{_libexecdir}/ssh-ldap-wrapper
715 ' %{_sysconfdir}/sshd_config
716 if [ ! -x /bin/systemd_booted ] || ! /bin/systemd_booted; then
717 /bin/systemctl try-restart sshd.service || :
719 %service -q sshd reload
722 %systemd_trigger sshd.service
723 if [ -x /bin/systemd_booted ] && /bin/systemd_booted; then
724 %banner %{name}-server -e << EOF
725 !!!!!!!!!!!!!!!!!!!!!!! WARNING !!!!!!!!!!!!!!!!!!!!!!!!!
726 ! Native systemd support for sshd has been installed. !
727 ! Restarting sshd.service with systemctl WILL kill all !
728 ! active ssh sessions (daemon as such will be started). !
729 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
736 %postun server-upstart
739 %post -n openldap-schema-openssh-lpk
740 %openldap_schema_register %{schemadir}/openssh-lpk.schema
741 %service -q ldap restart
743 %postun -n openldap-schema-openssh-lpk
744 if [ "$1" = "0" ]; then
745 %openldap_schema_unregister %{schemadir}/openssh-lpk.schema
746 %service -q ldap restart
750 %defattr(644,root,root,755)
751 %doc TODO README OVERVIEW CREDITS Change*
752 %attr(755,root,root) %{_bindir}/ssh-key*
753 %attr(755,root,root) %{_bindir}/ssh-vulnkey*
754 %{_mandir}/man1/ssh-key*.1*
755 %{_mandir}/man1/ssh-vulnkey*.1*
760 %defattr(644,root,root,755)
761 %attr(755,root,root) %{_bindir}/ssh
762 %attr(755,root,root) %{_bindir}/slogin
763 %attr(755,root,root) %{_bindir}/sftp
764 %attr(755,root,root) %{_bindir}/ssh-agent
765 %attr(755,root,root) %{_bindir}/ssh-add
766 %attr(755,root,root) %{_bindir}/ssh-copy-id
767 %attr(755,root,root) %{_bindir}/scp
768 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ssh_config
769 %config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/SSH_ASKPASS
770 %{_mandir}/man1/scp.1*
771 %{_mandir}/man1/ssh.1*
772 %{_mandir}/man1/slogin.1*
773 %{_mandir}/man1/sftp.1*
774 %{_mandir}/man1/ssh-agent.1*
775 %{_mandir}/man1/ssh-add.1*
776 %{_mandir}/man1/ssh-copy-id.1*
777 %{_mandir}/man5/ssh_config.5*
778 %lang(it) %{_mandir}/it/man1/ssh.1*
779 %lang(it) %{_mandir}/it/man5/ssh_config.5*
780 %lang(pl) %{_mandir}/pl/man1/scp.1*
781 %lang(zh_CN) %{_mandir}/zh_CN/man1/scp.1*
783 # for host-based auth (suid required for accessing private host key)
784 #%attr(4755,root,root) %{_libexecdir}/ssh-keysign
785 #%{_mandir}/man8/ssh-keysign.8*
787 %files clients-agent-profile_d
788 %defattr(644,root,root,755)
789 %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/ssh-agent.conf
790 %attr(755,root,root) /etc/profile.d/ssh-agent.sh
792 %files clients-agent-xinitrc
793 %defattr(644,root,root,755)
794 %attr(755,root,root) /etc/X11/xinit/xinitrc.d/ssh-agent.sh
797 %defattr(644,root,root,755)
798 %attr(755,root,root) %{_sbindir}/sshd
799 %attr(755,root,root) %{_libexecdir}/sftp-server
800 %attr(755,root,root) %{_libexecdir}/ssh-keysign
801 %attr(755,root,root) %{_libexecdir}/ssh-pkcs11-helper
802 %attr(755,root,root) %{_libexecdir}/sshd-keygen
803 %{_mandir}/man8/sshd.8*
804 %{_mandir}/man8/sftp-server.8*
805 %{_mandir}/man8/ssh-keysign.8*
806 %{_mandir}/man8/ssh-pkcs11-helper.8*
807 %{_mandir}/man5/sshd_config.5*
808 %{_mandir}/man5/moduli.5*
809 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/sshd_config
810 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/sshd
811 %attr(640,root,root) %{_sysconfdir}/moduli
812 %attr(754,root,root) /etc/rc.d/init.d/sshd
813 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/sshd
814 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.sshd
815 %{systemdunitdir}/sshd.service
816 %{systemdunitdir}/sshd.socket
817 %{systemdunitdir}/sshd@.service
821 %defattr(644,root,root,755)
822 %doc HOWTO.ldap-keys ldap.conf
823 %attr(755,root,root) %{_libexecdir}/ssh-ldap-helper
824 %attr(755,root,root) %{_libexecdir}/ssh-ldap-wrapper
825 %{_mandir}/man5/ssh-ldap.conf.5*
826 %{_mandir}/man8/ssh-ldap-helper.8*
829 %if %{with gnome} || %{with gtk}
831 %defattr(644,root,root,755)
832 %config(noreplace,missingok) %verify(not md5 mtime size) /etc/env.d/GNOME_SSH_ASKPASS*
833 %dir %{_libexecdir}/ssh
834 %attr(755,root,root) %{_libexecdir}/ssh/ssh-askpass
835 %attr(755,root,root) %{_libexecdir}/ssh-askpass
839 %files -n openldap-schema-openssh-lpk
840 %defattr(644,root,root,755)
841 %{schemadir}/openssh-lpk.schema
844 %if "%{pld_release}" != "ti"
845 %files server-upstart
846 %defattr(644,root,root,755)
847 %config(noreplace) %verify(not md5 mtime size) /etc/init/sshd.conf