wok-next view dropbear/receipt @ rev 21718

Up dropbear (2020.80)
author Pascal Bellard <pascal.bellard@slitaz.org>
date Wed Jul 29 08:19:44 2020 +0000 (2020-07-29)
parents fd95e92094fe
children
line source
1 # SliTaz package receipt v2.
3 PACKAGE="dropbear"
4 VERSION="2020.80"
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 cat >> localoptions.h <<EOT
37 #define DROPBEAR_SVR_PASSWORD_AUTH 0
38 #define DROPBEAR_SVR_PAM_AUTH 1
39 EOT
40 ./configure \
41 --enable-pam \
42 $CONFIGURE_ARGS &&
43 make PROGRAMS="dropbear $DROPBEARS" MULTI=1 SCPPROGRESS=1 &&
44 install -Dm755 dropbearmulti $install/usr/sbin/dropbear-pam || return 1
46 install -dm755 $install/usr/bin &&
47 for i in $DROPBEARS ssh
48 do
49 ln -s ../sbin/dropbear $install/usr/bin/$i || return 1
50 done
52 cook_pick_manpages $src/*.1 $src/*.8
53 cook_pick_docs CHANGES INSTALL LICENSE MULTI README SMALL
55 # Configuration file and init script.
56 mkdir -p $install/etc
57 cp -a $stuff/dropbear $install/etc
58 cp -a $stuff/init.d $install/etc
59 cp -a $stuff/sshx $install/usr/bin
60 ln -s sshx $install/usr/bin/pppssh
61 ln -s sshx $install/usr/bin/sshfbvnc
62 touch $install/etc/dropbear/dropbear_dss_host_key \
63 $install/etc/dropbear/dropbear_rsa_host_key \
64 $install/etc/dropbear/dropbear_ecdsa_host_key \
65 $install/etc/dropbear/dropbear_ed25519_host_key
67 # PAM
68 cp -a $stuff/pam.d $install/etc
70 # Fix dropbear initscript permissions
71 chown -R root:root $install
73 ln -s dropbear $install/etc/init.d/sshd
74 }
76 genpkg_rules()
77 {
78 case $PACKAGE in
79 dropbear)
80 copy @std
81 rm -f $fs/usr/sbin/dropbear-pam
82 rm -r $fs/etc/pam.d/
83 DEPENDS="zlib"
84 CONFIG_FILES="/etc/dropbear"
85 PROVIDE="ssh"
86 ;;
87 dropbear-pam)
88 copy dropbear-pam pam.d/
89 mv $fs/usr/sbin/dropbear-pam $fs/usr/sbin/dropbear
90 DEPENDS="dropbear pam"
91 CAT="security|with PAM support"
92 PROVIDE="dropbear:pam ssh:pam"
93 ;;
94 esac
95 }
97 # Post message when installing.
98 post_install_dropbear()
99 {
100 while read dropbear openssh
101 do
102 [ -s "$1/$openssh" ] || continue
103 chroot "$1/" dropbearconvert openssh dropbear $openssh $dropbear
104 chroot "$1/" dropbearkey -y -f $dropbear | grep Fingerprint
105 done <<EOT
106 /etc/dropbear/dropbear_rsa_host_key /etc/ssh/ssh_host_rsa_key
107 /etc/dropbear/dropbear_dss_host_key /etc/ssh/ssh_host_dsa_key
108 /etc/dropbear/dropbear_ecdsa_host_key /etc/ssh/ssh_host_ecdsa_key
109 /etc/dropbear/dropbear_ed25519_host_key /etc/ssh/ssh_host_ed25519_key
110 EOT
111 grep -q ssh "$1/etc/inetd.conf" || cat >> "$1/etc/inetd.conf" <<EOT
112 #ssh stream tcp nowait root dropbear dropbear -i -b /etc/dropbear/banner
113 EOT
114 [ -n "$quiet" ] || cat <<EOT
116 .-------------------------------------------------.
117 | To start dropbear server you can run: |
118 | /etc/init.d/dropbear start |
119 | |
120 | or add dropbear to RUN_DAEMONS in /etc/rcS.conf |
121 '-------------------------------------------------'
122 EOT
123 }
125 post_remove_dropbear()
126 {
127 grep -q dropbear "$1/etc/inetd.conf" &&
128 sed -i '/dropbear/d' "$1/etc/inetd.conf"
129 }
131 post_remove_dropbear_pam()
132 {
133 tazpkg -gi dropbear --forced
134 }