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