diff options
author | zer0def | 2022-05-13 07:44:53 +0200 |
---|---|---|
committer | zer0def | 2022-05-13 07:44:53 +0200 |
commit | 728576f5e92dcae0010131bf757788f12760abcd (patch) | |
tree | d65eae684d0bd7af9fd47e3fc7442190d23207ae | |
parent | aa7483e3fae0adf5cd105720ffc05ebcdc0df272 (diff) | |
download | aur-728576f5e92dcae0010131bf757788f12760abcd.tar.gz |
Added shim package maintaining behavior pre-HPN17v0
-rw-r--r-- | .SRCINFO | 28 | ||||
-rw-r--r-- | PKGBUILD | 86 | ||||
-rw-r--r-- | hpnsshd.service | 17 | ||||
-rw-r--r-- | hpnsshd.socket | 10 | ||||
-rw-r--r-- | hpnsshd@.service | 8 | ||||
-rw-r--r-- | hpnsshdgenkeys.service | 17 | ||||
-rw-r--r-- | sshd.service | 8 | ||||
-rw-r--r-- | sshd.socket | 4 | ||||
-rw-r--r-- | sshd@.service | 6 | ||||
-rw-r--r-- | sshdgenkeys.service | 22 |
10 files changed, 166 insertions, 40 deletions
@@ -1,7 +1,7 @@ pkgbase = openssh-hpn pkgdesc = A Secure SHell server/client fork with High Performance patches included pkgver = 8.9p1.hpn17v0 - pkgrel = 1 + pkgrel = 2 url = https://www.psc.edu/index.php/hpn-ssh/ install = openssh-hpn.install arch = x86_64 @@ -25,9 +25,16 @@ pkgbase = openssh-hpn backup = etc/ssh/ssh_config backup = etc/ssh/sshd_config backup = etc/pam.d/sshd + backup = etc/hpnssh/ssh_config + backup = etc/hpnssh/sshd_config + backup = etc/pam.d/hpnsshd source = https://github.com/rapier1/openssh-portable/archive/hpn-8_9_P1.tar.gz source = http://www.eworm.de/download/linux/openssh-tests-scp.patch source = glibc-2.31.patch + source = hpnsshdgenkeys.service + source = hpnsshd@.service + source = hpnsshd.service + source = hpnsshd.socket source = sshdgenkeys.service source = sshd@.service source = sshd.service @@ -40,6 +47,10 @@ pkgbase = openssh-hpn sha512sums = 6d7b6ad90f09fd6ab395b485c30921696b617318e6f6d587a18438f292a2c4c33f6d6150b19393e89c4c5c582b9632aea8b7b6aa220af29c084f5e5bfeade611 sha512sums = 3abe76d3ed971f4ef69013732f5be4cdfb8de0a12705b5d7190907a543c6d044bf064ff637f4511e4d95fbab58066ede8d0cce996d1adb1c2ec917be980f228a sha512sums = 6ebf291ada773fcc73661b2065ce75f95718bc9c562d14323faf6802a4d45e42f49689a4a1fc470530fa183d4973468d9a5b18acf90f7ada8b008f0f61038d14 + sha512sums = d976febf9118c7803765ab2c6634cdbc130bccb2f5b9995737d0c9b0346001f2299a47f1a552c867283fe9d6fd07cca71df3729d958dc137f51f285e867348de + sha512sums = f8e38835a46f24b4e49c674658a34ccdf2deff1cf2f87316886e9f3794579d8b56e80dac91a5309d6029b0196691b3512f62b957f10165b98e1452b8292c8f62 + sha512sums = aaa3f0e9ee686b7208ef94e373007a57e5f62020339399d6abbbeba276acedb1868d62c0401c901fd021f9287b263347b699c0d4b65f503fa57bafef5f4b8829 + sha512sums = ea1d31d84ca30fffa60b6eb06d1f532c75ff5a8acec893479cbe0f3669c62e5da9ee81be8549bae75d63e4b6fe69a4ffe6dfd4e3008e731e320d6da4bc4beae9 sha512sums = 298e47a21c337101974fa5237b3110aa3c7638b5fa53bd07661413236c8ed3212b431abaeffd875af6c9a72b4f8e1c8512e1e1960cbfff15bfee62b32d305fc3 b2sums = 867fc8e0c7d8c4f24982910c0c207c5afe6e082df83dbcd3c0ec2c9b439050e2289c626f6e59ef6ab12c8f65522c7e24949d6abb611037e943013eaf7144c905 b2sums = 1e6c8d39052bdc268c584488341e260a2695d4b9afabca41919710bb34833dd580ff1813c01b8ba91f2629273c8101ce0ed3b2749dabce054137b4ef37b2a548 @@ -48,6 +59,21 @@ pkgbase = openssh-hpn b2sums = 0a4c47fa2e3e62edfeef4f7d1b94167f26d83ccadb94af6dc467785edd4e9a1c810b05e824abacb1088afc0fe3cc102ef14141fac1d9aac1497855cc8748cf9b b2sums = 211234dd60995873e00952c29fcb77ee6f1e9519fda5abce0b1f3a26193f580ad0c948482fcc66769abf55e347f95a6e4ba2dde98257e6ddb97b6a18550aff5b b2sums = 3935bed214408537fe436c6015377561d2429f467f32b6e391068b1a9ef06566de51fba06d4ece393d68d3ba9fdc13f39ecdbdcd543602d308bcb980fa568d51 + b2sums = 1ff09abee75ef72397dc0e538b707083fead2491d4573b4e9208a4f08c11b227662bcae4086ab4dd0365422b8b4e0d4c865ba5dc744ee6574ab8605cf9667918 + b2sums = f3fa2ca4016af09e62037424d40377c7270fad498ebe6822f867a3ff4b6ba9473c75d182c1b9ffb9c328086a9e3c99ab81eb396937ccc3f92f611c66712ab85d + b2sums = 0b2ec199c7d772d4cfa6db12a653963727b01efea764fe364bb9138c983c56d1a33cc5e002b7edfeff957118d162e0c53c8d1b038a2f643bca38821b0ee8c3f6 + b2sums = 3d47ff65d0e69ec76e7390ab52c33a7ec39e403fc86dd9c0546b8a876ef69f44d60f4d833ac18c007b776a202eb33d08369165670857e718589c6f4f8a51a564 b2sums = 557d015bca7008ce824111f235da67b7e0051a693aaab666e97b78e753ed7928b72274af03d7fde12033986b733d5f996faf2a4feb6ecf53f39accae31334930 pkgname = openssh-hpn + +pkgname = openssh-hpn-shim + provides = openssh + conflicts = openssh + conflicts = openssh-hpn-git + backup = etc/ssh/ssh_config + backup = etc/ssh/sshd_config + backup = etc/pam.d/sshd + backup = etc/hpnssh/ssh_config + backup = etc/hpnssh/sshd_config + backup = etc/pam.d/hpnsshd @@ -39,13 +39,17 @@ # This package should probably follow chutzpah@gentoo's patches in the future -pkgname=openssh-hpn +pkgbase=openssh-hpn +pkgname=( + openssh-hpn + openssh-hpn-shim +) _openssh_ver=8.9p1 _hpn_ver=hpn17v0 -#_pkgver="`sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver}`_new" -_pkgver="`sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver}`" +#_pkgver="$(sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver})_new" +_pkgver="$(sed -e 's/\./_/' -e 's/p/_P/' <<< ${_openssh_ver})" pkgver="${_openssh_ver}.${_hpn_ver}" -pkgrel=1 +pkgrel=2 pkgdesc='A Secure SHell server/client fork with High Performance patches included' url='https://www.psc.edu/index.php/hpn-ssh/' license=('custom:BSD') @@ -55,11 +59,7 @@ makedepends=('git' 'libfido2') optdepends=('xorg-xauth: X11 forwarding' 'x11-ssh-askpass: input passphrase in X' 'libfido2: FIDO/U2F support') -#provides=('openssh') -conflicts=( - #'openssh' - 'openssh-hpn-git' -) +conflicts=('openssh-hpn-git') source=( "https://github.com/rapier1/openssh-portable/archive/hpn-${_pkgver}.tar.gz" 'http://www.eworm.de/download/linux/openssh-tests-scp.patch' @@ -67,14 +67,23 @@ source=( #'hpn-banner.patch' 'glibc-2.31.patch' #'hpn14v22-globals-cleanup.patch' + 'hpnsshdgenkeys.service' + 'hpnsshd@.service' + 'hpnsshd.service' + 'hpnsshd.socket' 'sshdgenkeys.service' 'sshd@.service' 'sshd.service' 'sshd.socket' 'sshd.pam') -backup=('etc/ssh/ssh_config' - 'etc/ssh/sshd_config' - 'etc/pam.d/sshd') +backup=( + 'etc/ssh/ssh_config' + 'etc/ssh/sshd_config' + 'etc/pam.d/sshd' + 'etc/hpnssh/ssh_config' + 'etc/hpnssh/sshd_config' + 'etc/pam.d/hpnsshd' +) sha512sums=( '190e4261a76ce5b31f8cdc76bc149c3c240611410461dd400e41ca55f4be4d5675473f16edbd648eaeb6d373136b831d61a9ae9f59c4e38ef8ecde738fda7880' @@ -87,6 +96,10 @@ sha512sums=( '6d7b6ad90f09fd6ab395b485c30921696b617318e6f6d587a18438f292a2c4c33f6d6150b19393e89c4c5c582b9632aea8b7b6aa220af29c084f5e5bfeade611' '3abe76d3ed971f4ef69013732f5be4cdfb8de0a12705b5d7190907a543c6d044bf064ff637f4511e4d95fbab58066ede8d0cce996d1adb1c2ec917be980f228a' '6ebf291ada773fcc73661b2065ce75f95718bc9c562d14323faf6802a4d45e42f49689a4a1fc470530fa183d4973468d9a5b18acf90f7ada8b008f0f61038d14' + 'd976febf9118c7803765ab2c6634cdbc130bccb2f5b9995737d0c9b0346001f2299a47f1a552c867283fe9d6fd07cca71df3729d958dc137f51f285e867348de' + 'f8e38835a46f24b4e49c674658a34ccdf2deff1cf2f87316886e9f3794579d8b56e80dac91a5309d6029b0196691b3512f62b957f10165b98e1452b8292c8f62' + 'aaa3f0e9ee686b7208ef94e373007a57e5f62020339399d6abbbeba276acedb1868d62c0401c901fd021f9287b263347b699c0d4b65f503fa57bafef5f4b8829' + 'ea1d31d84ca30fffa60b6eb06d1f532c75ff5a8acec893479cbe0f3669c62e5da9ee81be8549bae75d63e4b6fe69a4ffe6dfd4e3008e731e320d6da4bc4beae9' '298e47a21c337101974fa5237b3110aa3c7638b5fa53bd07661413236c8ed3212b431abaeffd875af6c9a72b4f8e1c8512e1e1960cbfff15bfee62b32d305fc3' ) @@ -101,6 +114,10 @@ b2sums=( '0a4c47fa2e3e62edfeef4f7d1b94167f26d83ccadb94af6dc467785edd4e9a1c810b05e824abacb1088afc0fe3cc102ef14141fac1d9aac1497855cc8748cf9b' '211234dd60995873e00952c29fcb77ee6f1e9519fda5abce0b1f3a26193f580ad0c948482fcc66769abf55e347f95a6e4ba2dde98257e6ddb97b6a18550aff5b' '3935bed214408537fe436c6015377561d2429f467f32b6e391068b1a9ef06566de51fba06d4ece393d68d3ba9fdc13f39ecdbdcd543602d308bcb980fa568d51' + '1ff09abee75ef72397dc0e538b707083fead2491d4573b4e9208a4f08c11b227662bcae4086ab4dd0365422b8b4e0d4c865ba5dc744ee6574ab8605cf9667918' + 'f3fa2ca4016af09e62037424d40377c7270fad498ebe6822f867a3ff4b6ba9473c75d182c1b9ffb9c328086a9e3c99ab81eb396937ccc3f92f611c66712ab85d' + '0b2ec199c7d772d4cfa6db12a653963727b01efea764fe364bb9138c983c56d1a33cc5e002b7edfeff957118d162e0c53c8d1b038a2f643bca38821b0ee8c3f6' + '3d47ff65d0e69ec76e7390ab52c33a7ec39e403fc86dd9c0546b8a876ef69f44d60f4d833ac18c007b776a202eb33d08369165670857e718589c6f4f8a51a564' '557d015bca7008ce824111f235da67b7e0051a693aaab666e97b78e753ed7928b72274af03d7fde12033986b733d5f996faf2a4feb6ecf53f39accae31334930' ) @@ -115,13 +132,17 @@ b3sums=( '9976a6c0ee11772d6d146fb5b1ab57f2df57a24158a0c87985a50d65deec52ed' '7f766a97ab867f1f7c5c2fc2770c0d7c7831a6422dfbc89e47f69d4d786a233f' '087e1f6c13658326117bef1b09693940d67322ea1635136fc6baeeff132cb1b1' + 'd0b5fcb56f4ea074569ef22ff57fafbaa9cd98cbbc4c3f4bf6bbd4ffa48f2fa0' + '87fa008865bb8b300375e22152de270a4b35ff604070578c152d44727cbca90d' + 'f03929c8964f2df4f4768745322a4c53b4105c2452a5b92c4c6655cf022193a9' + 'cc257ec08d2e8e00a3a30fba5f26e1282e832ff60f0e8e735bc0942425662064' 'f417610d7bdc942b79ee6fcc59c37e3d68ca09069a021e62a33fabe259dcc3af' ) install=$pkgname.install build() { - cd openssh-portable-hpn-${_pkgver}/ + cd "${srcdir}/openssh-portable-hpn-${_pkgver}/" # fix building if scp is not installed on host if [ ! -x /usr/bin/scp ]; then @@ -160,18 +181,18 @@ build() { make } -package() { - cd openssh-portable-hpn-${_pkgver}/ +package_openssh-hpn() { + cd "${srcdir}/openssh-portable-hpn-${_pkgver}/" make DESTDIR="${pkgdir}" install #ln -sf hpnssh.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/hpnsshdgenkeys.service - install -Dm644 ../sshd@.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd@.service - install -Dm644 ../sshd.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd.service - install -Dm644 ../sshd.socket "${pkgdir}"/usr/lib/systemd/system/hpnsshd.socket + install -Dm644 ../hpnsshdgenkeys.service "${pkgdir}"/usr/lib/systemd/system/hpnsshdgenkeys.service + install -Dm644 ../hpnsshd@.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd@.service + install -Dm644 ../hpnsshd.service "${pkgdir}"/usr/lib/systemd/system/hpnsshd.service + install -Dm644 ../hpnsshd.socket "${pkgdir}"/usr/lib/systemd/system/hpnsshd.socket install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/hpnsshd install -Dm755 contrib/findssl.sh "${pkgdir}"/usr/bin/hpnfindssl.sh @@ -185,3 +206,30 @@ package() { -i "${pkgdir}"/etc/hpnssh/sshd_config } +package_openssh-hpn-shim(){ + provides=('openssh') + conflicts=('openssh' 'openssh-hpn-git') + backup=( + 'etc/ssh/ssh_config' + 'etc/ssh/sshd_config' + 'etc/pam.d/sshd' + 'etc/hpnssh/ssh_config' + 'etc/hpnssh/sshd_config' + 'etc/pam.d/hpnsshd' + ) + + cd "${srcdir}/openssh-portable-hpn-${_pkgver}/" + + install -dm0755 "${pkgdir}/usr/bin"; pushd "${pkgdir}/usr/bin" + for i in findssl.sh scp sftp ssh ssh-add ssh-agent ssh-copy-id ssh-keygen ssh-keyscan sshd; do + ln -s "hpn${i}" "${i}" + done; popd + + 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.service "${pkgdir}"/usr/lib/systemd/system/sshd.service + install -Dm644 ../sshd.socket "${pkgdir}"/usr/lib/systemd/system/sshd.socket + install -Dm644 ../sshd.pam "${pkgdir}"/etc/pam.d/sshd + + install -Dm644 contrib/hpnssh-copy-id.1 "${pkgdir}"/usr/share/man/man1/ssh-copy-id.1 +} diff --git a/hpnsshd.service b/hpnsshd.service new file mode 100644 index 000000000000..0e531bb005d4 --- /dev/null +++ b/hpnsshd.service @@ -0,0 +1,17 @@ +[Unit] +Description=OpenSSH-HPN Daemon +Wants=hpnsshdgenkeys.service +After=hpnsshdgenkeys.service +After=network.target + +[Service] +ExecStart=/usr/bin/hpnsshd -D +ExecReload=/bin/kill -HUP $MAINPID +KillMode=process +Restart=always + +[Install] +WantedBy=multi-user.target + +# This service file runs an SSH daemon that forks for each incoming connection. +# If you prefer to spawn on-demand daemons, use sshd.socket and sshd@.service. diff --git a/hpnsshd.socket b/hpnsshd.socket new file mode 100644 index 000000000000..5fa2e343974c --- /dev/null +++ b/hpnsshd.socket @@ -0,0 +1,10 @@ +[Unit] +Conflicts=hpnsshd.service +Wants=hpnsshdgenkeys.service + +[Socket] +ListenStream=22 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/hpnsshd@.service b/hpnsshd@.service new file mode 100644 index 000000000000..ead31d9f41fd --- /dev/null +++ b/hpnsshd@.service @@ -0,0 +1,8 @@ +[Unit] +Description=OpenSSH-HPN Per-Connection Daemon +After=hpnsshdgenkeys.service + +[Service] +ExecStart=-/usr/bin/hpnsshd -i +StandardInput=socket +StandardError=syslog diff --git a/hpnsshdgenkeys.service b/hpnsshdgenkeys.service new file mode 100644 index 000000000000..c8c6ce3d2824 --- /dev/null +++ b/hpnsshdgenkeys.service @@ -0,0 +1,17 @@ +[Unit] +Description=SSH-HPN Key Generation +ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key +ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key.pub +ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key +ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key.pub +ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key +ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key.pub +ConditionPathExists=|!/etc/hpnssh/ssh_host_key +ConditionPathExists=|!/etc/hpnssh/ssh_host_key.pub +ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key +ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key.pub + +[Service] +ExecStart=/usr/bin/hpnssh-keygen -A +Type=oneshot +RemainAfterExit=yes diff --git a/sshd.service b/sshd.service index 0e531bb005d4..afcf08ea8d5e 100644 --- a/sshd.service +++ b/sshd.service @@ -1,11 +1,11 @@ [Unit] -Description=OpenSSH-HPN Daemon -Wants=hpnsshdgenkeys.service -After=hpnsshdgenkeys.service +Description=OpenSSH-HPN Daemon (upstream shim) +Wants=sshdgenkeys.service +After=sshdgenkeys.service After=network.target [Service] -ExecStart=/usr/bin/hpnsshd -D +ExecStart=/usr/bin/hpnsshd -D -f /etc/ssh/sshd_config ExecReload=/bin/kill -HUP $MAINPID KillMode=process Restart=always diff --git a/sshd.socket b/sshd.socket index 5fa2e343974c..e09e328690fd 100644 --- a/sshd.socket +++ b/sshd.socket @@ -1,6 +1,6 @@ [Unit] -Conflicts=hpnsshd.service -Wants=hpnsshdgenkeys.service +Conflicts=sshd.service +Wants=sshdgenkeys.service [Socket] ListenStream=22 diff --git a/sshd@.service b/sshd@.service index ead31d9f41fd..96ffb5294356 100644 --- a/sshd@.service +++ b/sshd@.service @@ -1,8 +1,8 @@ [Unit] -Description=OpenSSH-HPN Per-Connection Daemon -After=hpnsshdgenkeys.service +Description=OpenSSH-HPN Per-Connection Daemon (upstream shim) +After=sshdgenkeys.service [Service] -ExecStart=-/usr/bin/hpnsshd -i +ExecStart=-/usr/bin/hpnsshd -i -f /etc/ssh/sshd_config StandardInput=socket StandardError=syslog diff --git a/sshdgenkeys.service b/sshdgenkeys.service index c8c6ce3d2824..cf77872f0365 100644 --- a/sshdgenkeys.service +++ b/sshdgenkeys.service @@ -1,15 +1,15 @@ [Unit] -Description=SSH-HPN Key Generation -ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key -ConditionPathExists=|!/etc/hpnssh/ssh_host_dsa_key.pub -ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key -ConditionPathExists=|!/etc/hpnssh/ssh_host_ecdsa_key.pub -ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key -ConditionPathExists=|!/etc/hpnssh/ssh_host_ed25519_key.pub -ConditionPathExists=|!/etc/hpnssh/ssh_host_key -ConditionPathExists=|!/etc/hpnssh/ssh_host_key.pub -ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key -ConditionPathExists=|!/etc/hpnssh/ssh_host_rsa_key.pub +Description=SSH-HPN Key Generation (upstream shim) +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_key +ConditionPathExists=|!/etc/ssh/ssh_host_key.pub +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key +ConditionPathExists=|!/etc/ssh/ssh_host_rsa_key.pub [Service] ExecStart=/usr/bin/hpnssh-keygen -A |