wok-next view dropbear/receipt @ rev 21605

dropbear: add ed25519 key
author Pascal Bellard <pascal.bellard@slitaz.org>
date Thu Jun 25 08:01:52 2020 +0000 (2020-06-25)
parents 211f5ebfccdb
children 2491088816fa
line source
1 # SliTaz package receipt v2.
3 PACKAGE="dropbear"
4 VERSION="2020.79"
5 CATEGORY="security"
6 TAGS="ssh"
7 SHORT_DESC="Lightweight SSH2 server and client"
8 MAINTAINER="pascal.bellard@slitaz.org"
9 LICENSE="MIT"
10 WEB_SITE="http://matt.ucc.asn.au/dropbear/dropbear.html"
12 TARBALL="$PACKAGE-$VERSION.tar.bz2"
13 WGET_URL="http://matt.ucc.asn.au/dropbear/releases/$TARBALL"
15 BUILD_DEPENDS="pam-dev zlib-dev"
16 SPLIT="$PACKAGE-pam"
18 compile_rules()
19 {
20 local i DROPBEARS="dropbearkey dropbearconvert dbclient scp"
21 sed -iold -e 's|/usr/.*/xauth|/usr/bin/xauth|' \
22 -e 's|ENABLE_SVR_PAM_AUTH|ENABLE_SVR_PASSWORD_AUTH|' \
23 options.h
24 cat > localoptions.h <<EOT
25 #define SFTPSERVER_PATH "/usr/sbin/sftp-server"
26 #define DROPBEAR_X11FWD 1
27 EOT
29 ./configure \
30 --prefix=/usr \
31 --without-pam \
32 $CONFIGURE_ARGS &&
33 make PROGRAMS="dropbear $DROPBEARS" MULTI=1 SCPPROGRESS=1 &&
34 install -Dm755 dropbearmulti $install/usr/sbin/dropbear || return 1
36 sed -i 's|ENABLE_SVR_PASSWORD_AUTH|ENABLE_SVR_PAM_AUTH|' \
37 options.h
38 ./configure \
39 --enable-pam \
40 $CONFIGURE_ARGS &&
41 make PROGRAMS="dropbear $DROPBEARS" MULTI=1 SCPPROGRESS=1 &&
42 install -Dm755 dropbearmulti $install/usr/sbin/dropbear-pam || return 1
44 install -dm755 $install/usr/bin &&
45 for i in $DROPBEARS ssh
46 do
47 ln -s ../sbin/dropbear $install/usr/bin/$i || return 1
48 done
50 cook_pick_manpages $src/*.1 $src/*.8
51 cook_pick_docs CHANGES INSTALL LICENSE MULTI README SMALL
53 # Configuration file and init script.
54 mkdir -p $install/etc
55 cp -a $stuff/dropbear $install/etc
56 cp -a $stuff/init.d $install/etc
57 cp -a $stuff/sshx $install/usr/bin
58 ln -s sshx $install/usr/bin/pppssh
59 ln -s sshx $install/usr/bin/sshfbvnc
60 touch $install/etc/dropbear/dropbear_dss_host_key \
61 $install/etc/dropbear/dropbear_rsa_host_key \
62 $install/etc/dropbear/dropbear_ecdsa_host_key \
63 $install/etc/dropbear/dropbear_ed25519_host_key
65 # PAM
66 cp -a $stuff/pam.d $install/etc
68 # Fix dropbear initscript permissions
69 chown -R root:root $install
71 ln -s dropbear $install/etc/init.d/sshd
72 }
74 genpkg_rules()
75 {
76 case $PACKAGE in
77 dropbear)
78 copy @std
79 rm -f $fs/usr/sbin/dropbear-pam
80 rm -r $fs/etc/pam.d/
81 DEPENDS="zlib"
82 CONFIG_FILES="/etc/dropbear"
83 PROVIDE="ssh"
84 ;;
85 dropbear-pam)
86 copy dropbear-pam pam.d/
87 mv $fs/usr/sbin/dropbear-pam $fs/usr/sbin/dropbear
88 DEPENDS="dropbear pam"
89 CAT="security|with PAM support"
90 PROVIDE="dropbear:pam ssh:pam"
91 ;;
92 esac
93 }
95 # Post message when installing.
96 post_install_dropbear()
97 {
98 while read dropbear openssh
99 do
100 [ -s "$1/$openssh" ] || continue
101 chroot "$1/" dropbearconvert openssh dropbear $openssh $dropbear
102 chroot "$1/" dropbearkey -y -f $dropbear | grep Fingerprint
103 done <<EOT
104 /etc/dropbear/dropbear_rsa_host_key /etc/ssh/ssh_host_rsa_key
105 /etc/dropbear/dropbear_dss_host_key /etc/ssh/ssh_host_dsa_key
106 /etc/dropbear/dropbear_ecdsa_host_key /etc/ssh/ssh_host_ecdsa_key
107 /etc/dropbear/dropbear_ed25519_host_key /etc/ssh/ssh_host_ed25519_key
108 EOT
109 grep -q ssh "$1/etc/inetd.conf" || cat >> "$1/etc/inetd.conf" <<EOT
110 #ssh stream tcp nowait root dropbear dropbear -i -b /etc/dropbear/banner
111 EOT
112 [ -n "$quiet" ] || cat <<EOT
114 .-------------------------------------------------.
115 | To start dropbear server you can run: |
116 | /etc/init.d/dropbear start |
117 | |
118 | or add dropbear to RUN_DAEMONS in /etc/rcS.conf |
119 '-------------------------------------------------'
120 EOT
121 }
123 post_remove_dropbear()
124 {
125 grep -q dropbear "$1/etc/inetd.conf" &&
126 sed -i '/dropbear/d' "$1/etc/inetd.conf"
127 }
129 post_remove_dropbear_pam()
130 {
131 tazpkg -gi dropbear --forced
132 }