Date: Friday, September 17, 2021 @ 01:24:06 Author: grazzolini Revision: 424271
archrelease: copy trunk to testing-x86_64 Added: openssh/repos/testing-x86_64/ openssh/repos/testing-x86_64/PKGBUILD (from rev 424270, openssh/trunk/PKGBUILD) openssh/repos/testing-x86_64/glibc-2.31.patch (from rev 424270, openssh/trunk/glibc-2.31.patch) openssh/repos/testing-x86_64/install (from rev 424270, openssh/trunk/install) openssh/repos/testing-x86_64/sshd.conf (from rev 424270, openssh/trunk/sshd.conf) openssh/repos/testing-x86_64/sshd.pam (from rev 424270, openssh/trunk/sshd.pam) openssh/repos/testing-x86_64/sshd.service (from rev 424270, openssh/trunk/sshd.service) openssh/repos/testing-x86_64/sshdgenkeys.service (from rev 424270, openssh/trunk/sshdgenkeys.service) ---------------------+ PKGBUILD | 105 ++++++++++++++++++++++++++++++++++++++++++++++++++ glibc-2.31.patch | 100 +++++++++++++++++++++++++++++++++++++++++++++++ install | 32 +++++++++++++++ sshd.conf | 1 sshd.pam | 6 ++ sshd.service | 14 ++++++ sshdgenkeys.service | 15 +++++++ 7 files changed, 273 insertions(+) Copied: openssh/repos/testing-x86_64/PKGBUILD (from rev 424270, openssh/trunk/PKGBUILD) =================================================================== --- testing-x86_64/PKGBUILD (rev 0) +++ testing-x86_64/PKGBUILD 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,105 @@ +# Maintainer: Levente Polyak <anthraxx[at]archlinux[dot]org> +# Maintainer: Giancarlo Razzolini <grazzol...@archlinux.org> +# Contributor: Gaetan Bisson <bis...@archlinux.org> +# Contributor: Aaron Griffin <aa...@archlinux.org> +# Contributor: judd <jvi...@zeroflux.org> + +pkgname=openssh +pkgver=8.7p1 +pkgrel=2 +pkgdesc='Premier connectivity tool for remote login with the SSH protocol' +url='https://www.openssh.com/portable.html' +license=('custom:BSD') +arch=('x86_64') +depends=('glibc' 'krb5' 'openssl' 'libedit' 'ldns' 'libxcrypt' 'libcrypt.so' 'zlib' 'pam') +makedepends=('linux-headers' 'libfido2') +optdepends=('xorg-xauth: X11 forwarding' + 'x11-ssh-askpass: input passphrase in X' + 'libfido2: FIDO/U2F support') +validpgpkeys=('7168B983815A5EEF59A4ADFD2A3F414E736060BA') +#source=("git://anongit.mindrot.org/openssh.git?signed#tag=V_8_2_P1" +source=("https://ftp.openbsd.org/pub/OpenBSD/OpenSSH/portable/${pkgname}-${pkgver}.tar.gz"{,.asc} + 'sshdgenkeys.service' + 'sshd.service' + 'sshd.conf' + 'sshd.pam' + 'glibc-2.31.patch') +sha256sums=('7ca34b8bb24ae9e50f33792b7091b3841d7e1b440ff57bc9fabddf01e2ed1e24' + 'SKIP' + '4031577db6416fcbaacf8a26a024ecd3939e5c10fe6a86ee3f0eea5093d533b7' + 'e40f8b7c8e5e2ecf3084b3511a6c36d5b5c9f9e61f2bb13e3726c71dc7d4fbc7' + '4effac1186cc62617f44385415103021f72f674f8b8e26447fc1139c670090f6' + '64576021515c0a98b0aaf0a0ae02e0f5ebe8ee525b1e647ab68f369f81ecd846' + '25b4a4d9e2d9d3289ef30636a30e85fa1c71dd930d5efd712cca1a01a5019f93') + +backup=('etc/ssh/ssh_config' 'etc/ssh/sshd_config' 'etc/pam.d/sshd') + +install=install + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + + patch -p1 -i ../glibc-2.31.patch + + autoreconf +} + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + + ./configure \ + --prefix=/usr \ + --sbindir=/usr/bin \ + --libexecdir=/usr/lib/ssh \ + --sysconfdir=/etc/ssh \ + --disable-strip \ + --with-ldns \ + --with-libedit \ + --with-security-key-builtin \ + --with-ssl-engine \ + --with-pam \ + --with-privsep-user=nobody \ + --with-kerberos5=/usr \ + --with-xauth=/usr/bin/xauth \ + --with-md5-passwords \ + --with-pid-dir=/run \ + --with-default-path='/usr/local/sbin:/usr/local/bin:/usr/bin' \ + + make +} + +check() { + cd "${srcdir}/${pkgname}-${pkgver}" + + # Tests require openssh to be already installed system-wide, + # also connectivity tests will fail under makechrootpkg since + # it runs as nobody which has /bin/false as login shell. + + if [[ -e /usr/bin/scp && ! -e /.arch-chroot ]]; then + make tests + fi +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + + make DESTDIR="${pkgdir}" install + + ln -sf ssh.1.gz "${pkgdir}"/usr/share/man/man1/slogin.1.gz + install -Dm644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENCE" + + install -Dm644 ../sshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/sshdgenkeys.service + install -Dm644 ../sshd.service "${pkgdir}"/usr/lib/systemd/system/sshd.service + install -Dm644 ../sshd.conf "${pkgdir}"/usr/lib/tmpfiles.d/sshd.conf + install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd + + install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/findssl.sh + install -Dm755 contrib/ssh-copy-id "${pkgdir}"/usr/bin/ssh-copy-id + install -Dm644 contrib/ssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1 + + sed \ + -e '/^#KbdInteractiveAuthentication yes$/c KbdInteractiveAuthentication no' \ + -e '/^#PrintMotd yes$/c PrintMotd no # pam does that' \ + -e '/^#UsePAM no$/c UsePAM yes' \ + -i "${pkgdir}"/etc/ssh/sshd_config +} Copied: openssh/repos/testing-x86_64/glibc-2.31.patch (from rev 424270, openssh/trunk/glibc-2.31.patch) =================================================================== --- testing-x86_64/glibc-2.31.patch (rev 0) +++ testing-x86_64/glibc-2.31.patch 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,100 @@ +From beee0ef61866cb567b9abc23bd850f922e59e3f0 Mon Sep 17 00:00:00 2001 +From: Darren Tucker <dtuc...@dtucker.net> +Date: Wed, 13 Nov 2019 23:19:35 +1100 +Subject: [PATCH] seccomp: Allow clock_nanosleep() in sandbox. + +seccomp: Allow clock_nanosleep() to make OpenSSH working with latest +glibc. Patch from Jakub Jelen <jje...@redhat.com> via bz #3093. +--- + sandbox-seccomp-filter.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c +index b5cda70bb..96ab141f7 100644 +--- a/sandbox-seccomp-filter.c ++++ b/sandbox-seccomp-filter.c +@@ -242,6 +242,12 @@ static const struct sock_filter preauth_insns[] = { + #ifdef __NR_nanosleep + SC_ALLOW(__NR_nanosleep), + #endif ++#ifdef __NR_clock_nanosleep ++ SC_ALLOW(__NR_clock_nanosleep), ++#endif ++#ifdef __NR_clock_nanosleep ++ SC_ALLOW(__NR_clock_nanosleep), ++#endif + #ifdef __NR__newselect + SC_ALLOW(__NR__newselect), + #endif +From 69298ebfc2c066acee5d187eac8ce9f38c796630 Mon Sep 17 00:00:00 2001 +From: Darren Tucker <dtuc...@dtucker.net> +Date: Wed, 13 Nov 2019 23:27:31 +1100 +Subject: [PATCH] Remove duplicate __NR_clock_nanosleep + +--- + sandbox-seccomp-filter.c | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c +index 96ab141f7..be2397671 100644 +--- a/sandbox-seccomp-filter.c ++++ b/sandbox-seccomp-filter.c +@@ -245,9 +245,6 @@ static const struct sock_filter preauth_insns[] = { + #ifdef __NR_clock_nanosleep + SC_ALLOW(__NR_clock_nanosleep), + #endif +-#ifdef __NR_clock_nanosleep +- SC_ALLOW(__NR_clock_nanosleep), +-#endif + #ifdef __NR__newselect + SC_ALLOW(__NR__newselect), + #endif +From 030b4c2b8029563bc8a9fd764288fde08fa2347c Mon Sep 17 00:00:00 2001 +From: Darren Tucker <dtuc...@dtucker.net> +Date: Mon, 16 Dec 2019 13:55:56 +1100 +Subject: [PATCH] Allow clock_nanosleep_time64 in seccomp sandbox. + +Needed on Linux ARM. bz#3100, patch from jje...@redhat.com. +--- + sandbox-seccomp-filter.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c +index be2397671..3ef30c9d5 100644 +--- a/sandbox-seccomp-filter.c ++++ b/sandbox-seccomp-filter.c +@@ -245,6 +245,9 @@ static const struct sock_filter preauth_insns[] = { + #ifdef __NR_clock_nanosleep + SC_ALLOW(__NR_clock_nanosleep), + #endif ++#ifdef __NR_clock_nanosleep_time64 ++ SC_ALLOW(__NR_clock_nanosleep_time64), ++#endif + #ifdef __NR__newselect + SC_ALLOW(__NR__newselect), + #endif +From a991cc5ed5a7c455fefe909a30cf082011ef5dff Mon Sep 17 00:00:00 2001 +From: Khem Raj <raj.k...@gmail.com> +Date: Tue, 7 Jan 2020 16:26:45 -0800 +Subject: [PATCH] seccomp: Allow clock_gettime64() in sandbox. + +This helps sshd accept connections on mips platforms with +upcoming glibc ( 2.31 ) +--- + sandbox-seccomp-filter.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/sandbox-seccomp-filter.c b/sandbox-seccomp-filter.c +index 3ef30c9d5..999c46c9f 100644 +--- a/sandbox-seccomp-filter.c ++++ b/sandbox-seccomp-filter.c +@@ -248,6 +248,9 @@ static const struct sock_filter preauth_insns[] = { + #ifdef __NR_clock_nanosleep_time64 + SC_ALLOW(__NR_clock_nanosleep_time64), + #endif ++#ifdef __NR_clock_gettime64 ++ SC_ALLOW(__NR_clock_gettime64), ++#endif + #ifdef __NR__newselect + SC_ALLOW(__NR__newselect), + #endif Copied: openssh/repos/testing-x86_64/install (from rev 424270, openssh/trunk/install) =================================================================== --- testing-x86_64/install (rev 0) +++ testing-x86_64/install 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,32 @@ +pre_upgrade() { + # Remove socket activation. See: https://bugs.archlinux.org/task/62248 + if (( $(vercmp $2 8.0p1-3) < 0 )); then + if systemctl is-enabled -q sshd.socket; then + cat <<EOF +==> This package no longer provides sshd.socket and sshd@.service; +==> copies of those files will be placed under /etc/systemd/system +==> but please migrate to sshd.service whenever possible. +EOF + src=/usr/lib/systemd/system + dst=/etc/systemd/system + for i in sshd.socket sshd\@.service; do + if [[ ! -e "$dst/$i" ]]; then + cp -v "$src/$i" "$dst/$i" + fi + done + systemctl reenable sshd.socket + fi + fi +} + +post_upgrade() { + if (( $(vercmp $2 8.2p1-3) < 0 )); then + if systemctl is-active sshd.service >/dev/null; then + cat <<EOF +==> After this upgrade, your existing SSH daemon may be unable to accept +==> new connections. To fix this, your SSH daemon will now be restarted. +EOF + systemctl restart sshd.service + fi + fi +} Copied: openssh/repos/testing-x86_64/sshd.conf (from rev 424270, openssh/trunk/sshd.conf) =================================================================== --- testing-x86_64/sshd.conf (rev 0) +++ testing-x86_64/sshd.conf 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1 @@ +d /var/empty 0755 root root Copied: openssh/repos/testing-x86_64/sshd.pam (from rev 424270, openssh/trunk/sshd.pam) =================================================================== --- testing-x86_64/sshd.pam (rev 0) +++ testing-x86_64/sshd.pam 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,6 @@ +#%PAM-1.0 +#auth required pam_securetty.so #disable remote root +auth include system-remote-login +account include system-remote-login +password include system-remote-login +session include system-remote-login Copied: openssh/repos/testing-x86_64/sshd.service (from rev 424270, openssh/trunk/sshd.service) =================================================================== --- testing-x86_64/sshd.service (rev 0) +++ testing-x86_64/sshd.service 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,14 @@ +[Unit] +Description=OpenSSH Daemon +Wants=sshdgenkeys.service +After=sshdgenkeys.service +After=network.target + +[Service] +ExecStart=/usr/bin/sshd -D +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process +Restart=always + +[Install] +WantedBy=multi-user.target Copied: openssh/repos/testing-x86_64/sshdgenkeys.service (from rev 424270, openssh/trunk/sshdgenkeys.service) =================================================================== --- testing-x86_64/sshdgenkeys.service (rev 0) +++ testing-x86_64/sshdgenkeys.service 2021-09-17 01:24:06 UTC (rev 424271) @@ -0,0 +1,15 @@ +[Unit] +Description=SSH Key Generation +ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_dsa_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_ecdsa_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key +ConditionPathExists=|!/etc/ssh/ssh_host_ed25519_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub + +[Service] +ExecStart=/usr/bin/ssh-keygen -A +Type=oneshot +RemainAfterExit=yes