From 0ef672c65da8e48917733547b257d3b44c73ada4 Mon Sep 17 00:00:00 2001 From: Denis 'Gnutoo' Carikli Date: Tue, 9 Jun 2009 22:29:18 +0200 Subject: openssh: *add openssh 5.2p1 *as openssh 5.2p is similar(they worked with the same recipe) to openssh-4.6p1 they now(for openssh-4.6p1) depend on a common openssh.inc checksums will be commited soon --- .../openssh-5.2-sftp-server-nolibcrypto.patch | 13 +++ recipes/openssh/openssh-5.2p1/ssh_config | 46 ++++++++ recipes/openssh/openssh-5.2p1/sshd_config | 119 +++++++++++++++++++++ recipes/openssh/openssh.inc | 106 ++++++++++++++++++ recipes/openssh/openssh_4.6p1.bb | 115 +------------------- recipes/openssh/openssh_5.2p1.bb | 9 ++ 6 files changed, 298 insertions(+), 110 deletions(-) create mode 100644 recipes/openssh/openssh-5.2p1/openssh-5.2-sftp-server-nolibcrypto.patch create mode 100644 recipes/openssh/openssh-5.2p1/ssh_config create mode 100644 recipes/openssh/openssh-5.2p1/sshd_config create mode 100644 recipes/openssh/openssh.inc create mode 100644 recipes/openssh/openssh_5.2p1.bb diff --git a/recipes/openssh/openssh-5.2p1/openssh-5.2-sftp-server-nolibcrypto.patch b/recipes/openssh/openssh-5.2p1/openssh-5.2-sftp-server-nolibcrypto.patch new file mode 100644 index 0000000000..2d0cdd5cca --- /dev/null +++ b/recipes/openssh/openssh-5.2p1/openssh-5.2-sftp-server-nolibcrypto.patch @@ -0,0 +1,13 @@ +Index: openssh-5.2p1/Makefile.in +=================================================================== +--- openssh-5.2p1.orig/Makefile.in ++++ openssh-5.2p1/Makefile.in +@@ -158,7 +158,7 @@ ssh-keyscan$(EXEEXT): $(LIBCOMPAT) libss + $(LD) -o $@ ssh-keyscan.o $(LDFLAGS) -lssh -lopenbsd-compat -lssh $(LIBS) + + sftp-server$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-common.o sftp-server.o sftp-server-main.o +- $(LD) -o $@ sftp-server.o sftp-common.o sftp-server-main.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) ++ $(LD) -o $@ sftp-server.o sftp-common.o sftp-server-main.o $(LDFLAGS) -lssh -lopenbsd-compat + + sftp$(EXEEXT): $(LIBCOMPAT) libssh.a sftp.o sftp-client.o sftp-common.o sftp-glob.o progressmeter.o + $(LD) -o $@ progressmeter.o sftp.o sftp-client.o sftp-common.o sftp-glob.o $(LDFLAGS) -lssh -lopenbsd-compat $(LIBS) $(LIBEDIT) diff --git a/recipes/openssh/openssh-5.2p1/ssh_config b/recipes/openssh/openssh-5.2p1/ssh_config new file mode 100644 index 0000000000..4a4a649ba8 --- /dev/null +++ b/recipes/openssh/openssh-5.2p1/ssh_config @@ -0,0 +1,46 @@ +# $OpenBSD: ssh_config,v 1.25 2009/02/17 01:28:32 djm Exp $ + +# This is the ssh client system-wide configuration file. See +# ssh_config(5) for more information. This file provides defaults for +# users, and the values can be changed in per-user configuration files +# or on the command line. + +# Configuration data is parsed as follows: +# 1. command line options +# 2. user-specific file +# 3. system-wide file +# Any configuration value is only changed the first time it is set. +# Thus, host-specific definitions should be at the beginning of the +# configuration file, and defaults at the end. + +# Site-wide defaults for some commonly used options. For a comprehensive +# list of available options, their meanings and defaults, please see the +# ssh_config(5) man page. + +Host * + ForwardAgent yes + ForwardX11 yes +# RhostsRSAAuthentication no +# RSAAuthentication yes +# PasswordAuthentication yes +# HostbasedAuthentication no +# GSSAPIAuthentication no +# GSSAPIDelegateCredentials no +# BatchMode no +# CheckHostIP yes +# AddressFamily any +# ConnectTimeout 0 +# StrictHostKeyChecking ask +# IdentityFile ~/.ssh/identity +# IdentityFile ~/.ssh/id_rsa +# IdentityFile ~/.ssh/id_dsa +# Port 22 +# Protocol 2,1 +# Cipher 3des +# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc +# MACs hmac-md5,hmac-sha1,umac-64@openssh.com,hmac-ripemd160 +# EscapeChar ~ +# Tunnel no +# TunnelDevice any:any +# PermitLocalCommand no +# VisualHostKey no diff --git a/recipes/openssh/openssh-5.2p1/sshd_config b/recipes/openssh/openssh-5.2p1/sshd_config new file mode 100644 index 0000000000..4f9b626fbd --- /dev/null +++ b/recipes/openssh/openssh-5.2p1/sshd_config @@ -0,0 +1,119 @@ +# $OpenBSD: sshd_config,v 1.80 2008/07/02 02:24:18 djm Exp $ + +# This is the sshd server system-wide configuration file. See +# sshd_config(5) for more information. + +# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin + +# The strategy used for options in the default sshd_config shipped with +# OpenSSH is to specify options with their default value where +# possible, but leave them commented. Uncommented options change a +# default value. + +#Port 22 +#AddressFamily any +#ListenAddress 0.0.0.0 +#ListenAddress :: + +# Disable legacy (protocol version 1) support in the server for new +# installations. In future the default will change to require explicit +# activation of protocol 1 +Protocol 2 + +# HostKey for protocol version 1 +#HostKey /etc/ssh/ssh_host_key +# HostKeys for protocol version 2 +#HostKey /etc/ssh/ssh_host_rsa_key +#HostKey /etc/ssh/ssh_host_dsa_key + +# Lifetime and size of ephemeral version 1 server key +#KeyRegenerationInterval 1h +#ServerKeyBits 1024 + +# Logging +# obsoletes QuietMode and FascistLogging +#SyslogFacility AUTH +#LogLevel INFO + +# Authentication: + +#LoginGraceTime 2m +#PermitRootLogin yes +#StrictModes yes +#MaxAuthTries 6 +#MaxSessions 10 + +#RSAAuthentication yes +#PubkeyAuthentication yes +#AuthorizedKeysFile .ssh/authorized_keys + +# For this to work you will also need host keys in /etc/ssh/ssh_known_hosts +#RhostsRSAAuthentication no +# similar for protocol version 2 +#HostbasedAuthentication no +# Change to yes if you don't trust ~/.ssh/known_hosts for +# RhostsRSAAuthentication and HostbasedAuthentication +#IgnoreUserKnownHosts no +# Don't read the user's ~/.rhosts and ~/.shosts files +#IgnoreRhosts yes + +# To disable tunneled clear text passwords, change to no here! +#PasswordAuthentication yes +#PermitEmptyPasswords no + +# Change to no to disable s/key passwords +#ChallengeResponseAuthentication yes + +# Kerberos options +#KerberosAuthentication no +#KerberosOrLocalPasswd yes +#KerberosTicketCleanup yes +#KerberosGetAFSToken no + +# GSSAPI options +#GSSAPIAuthentication no +#GSSAPICleanupCredentials yes + +# Set this to 'yes' to enable PAM authentication, account processing, +# and session processing. If this is enabled, PAM authentication will +# be allowed through the ChallengeResponseAuthentication and +# PasswordAuthentication. Depending on your PAM configuration, +# PAM authentication via ChallengeResponseAuthentication may bypass +# the setting of "PermitRootLogin without-password". +# If you just want the PAM account and session checks to run without +# PAM authentication, then enable this but set PasswordAuthentication +# and ChallengeResponseAuthentication to 'no'. +#UsePAM no + +#AllowAgentForwarding yes +#AllowTcpForwarding yes +#GatewayPorts no +#X11Forwarding no +#X11DisplayOffset 10 +#X11UseLocalhost yes +#PrintMotd yes +#PrintLastLog yes +#TCPKeepAlive yes +#UseLogin no +UsePrivilegeSeparation yes +#PermitUserEnvironment no +Compression no +ClientAliveInterval 15 +ClientAliveCountMax 4 +#UseDNS yes +#PidFile /var/run/sshd.pid +#MaxStartups 10 +#PermitTunnel no +#ChrootDirectory none + +# no default banner path +#Banner none + +# override default of no subsystems +Subsystem sftp /usr/libexec/sftp-server + +# Example of overriding settings on a per-user basis +#Match User anoncvs +# X11Forwarding no +# AllowTcpForwarding no +# ForceCommand cvs server diff --git a/recipes/openssh/openssh.inc b/recipes/openssh/openssh.inc new file mode 100644 index 0000000000..6c33142f0b --- /dev/null +++ b/recipes/openssh/openssh.inc @@ -0,0 +1,106 @@ +DEPENDS = "zlib openssl" + +RCONFLICTS_openssh = "dropbear" +RCONFLICTS_openssh-sshd = "dropbear" + +SECTION = "console/network" +DESCRIPTION = "Secure rlogin/rsh/rcp/telnet replacement (OpenSSH) \ +Ssh (Secure Shell) is a program for logging into a remote machine \ +and for executing commands on a remote machine. \ +It provides secure encrypted communications between two untrusted \ +hosts over an insecure network. X11 connections and arbitrary TCP/IP \ +ports can also be forwarded over the secure channel. \ +It is intended as a replacement for rlogin, rsh and rcp, and can be \ +used to provide applications with a secure communication channel." +HOMEPAGE = "http://www.openssh.org/" +LICENSE = "BSD" + +inherit autotools + +export ASKPASS_PROGRAM = "${bindir}/ssh-askpass" +export LD = "${CC}" +CFLAGS_prepend = "-I${S} " +CFLAGS_append = " -D__FILE_OFFSET_BITS=64" +LDFLAGS_prepend = "-L${S} -L${S}/openbsd-compat " +EXTRA_OECONF = "--disable-suid-ssh --with-ssl=${STAGING_LIBDIR}/ssl \ + --with-rand-helper=no --without-pam \ + --without-zlib-version-check \ + --with-privsep-path=/var/run/sshd \ + --sysconfdir=${sysconfdir}/ssh \ + --with-xauth=/usr/bin/xauth" + +EXTRA_OEMAKE = "'STRIP_OPT='" + +do_configure_prepend () { + if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then + cp aclocal.m4 acinclude.m4 + fi +} + +do_compile_append () { + install -m 0644 ${WORKDIR}/sshd_config ${S}/ + install -m 0644 ${WORKDIR}/ssh_config ${S}/ +} + +do_install_append() { + install -d ${D}${sysconfdir}/init.d + install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/sshd + mv ${D}${bindir}/scp ${D}${bindir}/scp.openssh + mv ${D}${bindir}/ssh ${D}${bindir}/ssh.openssh + rmdir ${D}/var/run/sshd ${D}/var/run ${D}/var +} + +PACKAGES =+ " ssh-keygen openssh-scp openssh-ssh openssh-sshd openssh-sftp openssh-misc openssh-sftp-server" +FILES_openssh-dbg +=${bindir}/.debug ${libdir}exec/.debug" +FILES_openssh-scp = "${bindir}/scp.${PN}" +FILES_openssh-ssh = "${bindir}/ssh.${PN} ${bindir}/slogin /${sysconfdir}/ssh/ssh_config" +FILES_openssh-sshd = "${sbindir}/sshd /${sysconfdir}/init.d/sshd" +FILES_openssh-sshd += " /${sysconfdir}/ssh/moduli /${sysconfdir}/ssh/sshd_config" +FILES_openssh-sftp = "${bindir}/sftp" +FILES_openssh-sftp-server = "${libdir}exec/sftp-server" +FILES_openssh-misc = "${bindir}/ssh* ${libdir}exec/ssh*" +FILES_ssh-keygen = "${bindir}/ssh-keygen" + +RDEPENDS_openssh += " openssh-scp openssh-ssh openssh-sshd ssh-keygen " +DEPENDS_openssh-sshd += " update-rc.d" +RDEPENDS_openssh-sshd += " update-rc.d ssh-keygen " + +pkg_postinst_openssh-sshd() { +if test "x$D" != "x"; then + exit 1 +else + addgroup sshd + adduser --system --home /var/run/sshd --no-create-home --disabled-password --ingroup sshd -s /bin/false sshd + update-rc.d sshd defaults 9 +fi +} + +pkg_postinst_openssh-scp() { + update-alternatives --install ${bindir}/scp scp scp.${PN} 90 +} + +pkg_postinst_openssh-ssh() { + update-alternatives --install ${bindir}/ssh ssh ssh.${PN} 90 +} + +pkg_postrm_openssh-ssh() { + update-alternatives --remove ${bindir}/ssh ssh.${PN} +} + +pkg_postrm_openssh-scp() { + update-alternatives --remove ${bindir}/scp scp.${PN} +} + +pkg_postrm_openssh-sshd() { +if test "x$D" != "x"; then + exit 1 +else + ${sysconfdir}/init.d/sshd stop + deluser sshd + delgroup sshd + update-rc.d -f sshd remove +fi +} + +CONFFILES_openssh-sshd = "${sysconfdir}/ssh/sshd_config" +CONFFILES_openssh-ssh = "${sysconfdir}/ssh/ssh_config" diff --git a/recipes/openssh/openssh_4.6p1.bb b/recipes/openssh/openssh_4.6p1.bb index b1957bebac..f5ca4de159 100644 --- a/recipes/openssh/openssh_4.6p1.bb +++ b/recipes/openssh/openssh_4.6p1.bb @@ -1,113 +1,8 @@ -DEPENDS = "zlib openssl" - -RCONFLICTS_openssh = "dropbear" -RCONFLICTS_openssh-sshd = "dropbear" - -SECTION = "console/network" -DESCRIPTION = "Secure rlogin/rsh/rcp/telnet replacement (OpenSSH) \ -Ssh (Secure Shell) is a program for logging into a remote machine \ -and for executing commands on a remote machine. \ -It provides secure encrypted communications between two untrusted \ -hosts over an insecure network. X11 connections and arbitrary TCP/IP \ -ports can also be forwarded over the secure channel. \ -It is intended as a replacement for rlogin, rsh and rcp, and can be \ -used to provide applications with a secure communication channel." -HOMEPAGE = "http://www.openssh.org/" -LICENSE = "BSD" -PR = "r6" - +require openssh.inc SRC_URI = "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar.gz \ file://sftp-server-nolibcrypto.patch;patch=1 \ file://sshd_config \ - file://ssh_config \ - file://init" - -inherit autotools - -export ASKPASS_PROGRAM = "${bindir}/ssh-askpass" -export LD = "${CC}" -CFLAGS_prepend = "-I${S} " -CFLAGS_append = " -D__FILE_OFFSET_BITS=64" -LDFLAGS_prepend = "-L${S} -L${S}/openbsd-compat " -EXTRA_OECONF = "--disable-suid-ssh --with-ssl=${STAGING_LIBDIR}/ssl \ - --with-rand-helper=no --without-pam \ - --without-zlib-version-check \ - --with-privsep-path=/var/run/sshd \ - --sysconfdir=${sysconfdir}/ssh \ - --with-xauth=/usr/bin/xauth" - -EXTRA_OEMAKE = "'STRIP_OPT='" - -do_configure_prepend () { - if [ ! -e acinclude.m4 -a -e aclocal.m4 ]; then - cp aclocal.m4 acinclude.m4 - fi -} - -do_compile_append () { - install -m 0644 ${WORKDIR}/sshd_config ${S}/ - install -m 0644 ${WORKDIR}/ssh_config ${S}/ -} - -do_install_append() { - install -d ${D}${sysconfdir}/init.d - install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/sshd - mv ${D}${bindir}/scp ${D}${bindir}/scp.openssh - mv ${D}${bindir}/ssh ${D}${bindir}/ssh.openssh - rmdir ${D}/var/run/sshd ${D}/var/run ${D}/var -} - -PACKAGES =+ " ssh-keygen openssh-scp openssh-ssh openssh-sshd openssh-sftp openssh-misc openssh-sftp-server" -FILES_openssh-dbg +=${bindir}/.debug ${libdir}exec/.debug" -FILES_openssh-scp = "${bindir}/scp.${PN}" -FILES_openssh-ssh = "${bindir}/ssh.${PN} ${bindir}/slogin /${sysconfdir}/ssh/ssh_config" -FILES_openssh-sshd = "${sbindir}/sshd /${sysconfdir}/init.d/sshd" -FILES_openssh-sshd += " /${sysconfdir}/ssh/moduli /${sysconfdir}/ssh/sshd_config" -FILES_openssh-sftp = "${bindir}/sftp" -FILES_openssh-sftp-server = "${libdir}exec/sftp-server" -FILES_openssh-misc = "${bindir}/ssh* ${libdir}exec/ssh*" -FILES_ssh-keygen = "${bindir}/ssh-keygen" - -RDEPENDS_openssh += " openssh-scp openssh-ssh openssh-sshd ssh-keygen " -DEPENDS_openssh-sshd += " update-rc.d" -RDEPENDS_openssh-sshd += " update-rc.d ssh-keygen " - -pkg_postinst_openssh-sshd() { -if test "x$D" != "x"; then - exit 1 -else - addgroup sshd - adduser --system --home /var/run/sshd --no-create-home --disabled-password --ingroup sshd -s /bin/false sshd - update-rc.d sshd defaults 9 -fi -} - -pkg_postinst_openssh-scp() { - update-alternatives --install ${bindir}/scp scp scp.${PN} 90 -} - -pkg_postinst_openssh-ssh() { - update-alternatives --install ${bindir}/ssh ssh ssh.${PN} 90 -} - -pkg_postrm_openssh-ssh() { - update-alternatives --remove ${bindir}/ssh ssh.${PN} -} - -pkg_postrm_openssh-scp() { - update-alternatives --remove ${bindir}/scp scp.${PN} -} - -pkg_postrm_openssh-sshd() { -if test "x$D" != "x"; then - exit 1 -else - ${sysconfdir}/init.d/sshd stop - deluser sshd - delgroup sshd - update-rc.d -f sshd remove -fi -} - -CONFFILES_openssh-sshd = "${sysconfdir}/ssh/sshd_config" -CONFFILES_openssh-ssh = "${sysconfdir}/ssh/ssh_config" + file://ssh_config \ + file://init \ + " +PR = "r6" diff --git a/recipes/openssh/openssh_5.2p1.bb b/recipes/openssh/openssh_5.2p1.bb new file mode 100644 index 0000000000..55227ca8ee --- /dev/null +++ b/recipes/openssh/openssh_5.2p1.bb @@ -0,0 +1,9 @@ +require openssh.inc +DEFAULT_PREFERENCE = "-1" +#not tested extensively(I tested only ssh) and it's an important recipe I'm afraid to broke +SRC_URI = "ftp://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-${PV}.tar.gz \ + file://sshd_config \ + file://ssh_config \ + file://init \ + file://openssh-5.2-sftp-server-nolibcrypto.patch;patch=1 \ + " -- cgit 1.2.3-korg