wok-tiny annotate dropbear-without-zlib/receipt @ rev 183
linux: fix bundle.S
author | Pascal Bellard <pascal.bellard@slitaz.org> |
---|---|
date | Tue Sep 26 17:09:38 2023 +0000 (8 months ago) |
parents | a28c45a86936 |
children |
rev | line source |
---|---|
pascal@69 | 1 # SliTaz package receipt. |
pascal@69 | 2 |
pascal@69 | 3 PACKAGE="dropbear-without-zlib" |
pascal@88 | 4 SOURCE="dropbear" |
pascal@69 | 5 VERSION="0.53" |
pascal@69 | 6 CATEGORY="security" |
pascal@183 | 7 GROUP="network" |
pascal@69 | 8 SHORT_DESC="Light SSH client and server without compression support." |
pascal@69 | 9 MAINTAINER="pascal.bellard@slitaz.org" |
pascal@90 | 10 LICENSE="MIT" |
pascal@88 | 11 TARBALL="$SOURCE-$VERSION.tar.gz" |
pascal@157 | 12 DEPENDS="libutil busybox-net" |
pascal@69 | 13 [ -n "$TARGET" ] || TARGET="i486" |
pascal@69 | 14 BUILD_DEPENDS="dropbear uclibc-cross-compiler-$TARGET" |
pascal@69 | 15 WEB_SITE="http://matt.ucc.asn.au/dropbear/dropbear.html" |
pascal@69 | 16 WGET_URL="http://matt.ucc.asn.au/dropbear/releases/$TARBALL" |
pascal@69 | 17 CONFIG_FILES="/etc/dropbear /etc/daemons.conf /etc/rcS.conf" |
pascal@146 | 18 PROVIDE="ssh dropbear scp dropbear-client" |
pascal@69 | 19 TAGS="ssh" |
pascal@69 | 20 |
pascal@69 | 21 # Rules to configure and make the package. |
pascal@69 | 22 compile_rules() |
pascal@69 | 23 { |
pascal@69 | 24 local i |
pascal@69 | 25 local DROPBEARS |
pascal@69 | 26 DROPBEARS="dbclient scp" |
pascal@69 | 27 sed -i -e 's|/usr/X11R6/bin/xauth|/usr/bin/xauth|' \ |
pascal@69 | 28 -e 's|/usr/libexec/sftp-server|/usr/sbin/sftp-server|' \ |
pascal@138 | 29 -e 's|.*MD5_HMAC.*|/*&*/|' \ |
pascal@138 | 30 -e 's|.*_AES128.*|/*&*/|' \ |
pascal@138 | 31 -e 's|.*TWOFISH128.*|/*&*/|' \ |
pascal@69 | 32 options.h |
pascal@69 | 33 ./configure --prefix=/usr --without-pam --host=$TARGET-pc-linux-gnu \ |
pascal@69 | 34 --disable-zlib CC=uclibc-$TARGET-cc && |
pascal@69 | 35 make PROGRAMS="dropbear $DROPBEARS" MULTI=1 && |
pascal@94 | 36 install -d -m 755 $DESTDIR/usr/sbin && |
pascal@94 | 37 install -m 755 dropbearmulti $DESTDIR/usr/sbin/dropbear && |
pascal@94 | 38 chown root $DESTDIR/usr/sbin/dropbear && |
pascal@94 | 39 chgrp 0 $DESTDIR/usr/sbin/dropbear && |
pascal@94 | 40 install -d -m 755 $DESTDIR/usr/bin && |
pascal@69 | 41 for i in $DROPBEARS ssh; do |
pascal@112 | 42 ln $DESTDIR/usr/sbin/dropbear $DESTDIR/usr/bin/$i |
pascal@69 | 43 done |
pascal@69 | 44 } |
pascal@69 | 45 |
pascal@69 | 46 # Rules to gen a SliTaz package suitable for Tazpkg. |
pascal@69 | 47 genpkg_rules() |
pascal@69 | 48 { |
pascal@112 | 49 mkdir -p $fs/usr/sbin $fs/etc/init.d $fs/etc/dropbear |
pascal@94 | 50 cp -a $install/usr/bin $fs/usr |
pascal@112 | 51 ln $fs/usr/bin/dbclient $fs/usr/sbin/dropbear |
pascal@69 | 52 ln -s daemon $fs/etc/init.d/dropbear |
pascal@69 | 53 cat > $fs/etc/dropbear/banner <<EOT |
pascal@69 | 54 |
pascal@69 | 55 Secure login on Tiny SliTaz GNU/Linux powered by Dropbear. |
pascal@69 | 56 EOT |
pascal@69 | 57 |
pascal@69 | 58 # Fix dropbear initscript perms |
pascal@69 | 59 chown -R root.root $fs |
pascal@69 | 60 } |
pascal@69 | 61 |
pascal@69 | 62 # Post message when installing. |
pascal@69 | 63 post_install() |
pascal@69 | 64 { |
pascal@87 | 65 if [ "$STARTDAEMON" = "ON" ]; then |
pascal@87 | 66 grep -q inetd $1/etc/rcS.conf || |
pascal@87 | 67 sed -i 's/^RUN_DAEMONS="/&inetd /' $1/etc/rcS.conf |
pascal@87 | 68 grep -q dropbear $1/etc/inetd.conf || cat >> $1/etc/inetd.conf <<EOT |
pascal@86 | 69 ssh stream tcp nowait root /usr/sbin/dropbear /usr/sbin/dropbear -i $DROPBEAR_OPTS |
pascal@69 | 70 EOT |
pascal@87 | 71 fi |
pascal@69 | 72 dos2unix <<EOT | uudecode - > $1/etc/dropbear/dropbear_dss_host_key |
pascal@69 | 73 $DSSKEY |
pascal@69 | 74 EOT |
pascal@69 | 75 dos2unix <<EOT | uudecode - > $1/etc/dropbear/dropbear_rsa_host_key |
pascal@69 | 76 $RSAKEY |
pascal@69 | 77 EOT |
pascal@69 | 78 chmod 600 $1/etc/dropbear/dropbear_*_host_key |
pascal@69 | 79 } |
pascal@69 | 80 |
pascal@69 | 81 config_form() |
pascal@69 | 82 { |
pascal@69 | 83 [ -n "$DROPBEAR_OPTS" ] || DROPBEAR_OPTS="-b /etc/dropbear/banner" |
pascal@69 | 84 if [ -z "$DSSKEY" ]; then |
pascal@69 | 85 dropbearkey -t dss -f /tmp/mkssh$$ > /dev/null 2>&1 |
pascal@69 | 86 DSSKEY="$(uuencode -m - < /tmp/mkssh$$)" |
pascal@69 | 87 rm -f /tmp/mkssh$$ |
pascal@69 | 88 fi |
pascal@69 | 89 uudecode - > /tmp/mkssh$$ <<EOT |
pascal@69 | 90 $DSSKEY |
pascal@69 | 91 EOT |
pascal@69 | 92 DSSPUB="$(dropbearkey -y -f /tmp/mkssh$$ | grep ^ssh)" |
pascal@69 | 93 rm -f /tmp/mkssh$$ |
pascal@69 | 94 if [ -z "$RSAKEY" ]; then |
pascal@69 | 95 dropbearkey -t rsa -f /tmp/mkssh$$ > /dev/null 2>&1 |
pascal@69 | 96 RSAKEY="$(uuencode -m - < /tmp/mkssh$$)" |
pascal@69 | 97 rm -f /tmp/mkssh$$ |
pascal@69 | 98 fi |
pascal@69 | 99 uudecode - > /tmp/mkssh$$ <<EOT |
pascal@69 | 100 $RSAKEY |
pascal@69 | 101 EOT |
pascal@69 | 102 RSAPUB="$(dropbearkey -y -f /tmp/mkssh$$ | grep ^ssh)" |
pascal@69 | 103 rm -f /tmp/mkssh$$ |
pascal@69 | 104 cat <<EOT |
pascal@126 | 105 <input type="checkbox" name="STARTDAEMON" value="ON" ${STARTDAEMON:+checked="checked" }/> |
pascal@87 | 106 Start server during boot<br> |
pascal@69 | 107 <table> |
pascal@69 | 108 <tr> |
pascal@69 | 109 <td>Server options</td> |
pascal@69 | 110 <td><input type="text" name="DROPBEAR_OPTS" value="$DROPBEAR_OPTS" /></td> |
pascal@69 | 111 </tr> |
pascal@69 | 112 <tr> |
pascal@69 | 113 <td>DSS key</td> |
pascal@69 | 114 <td><textarea name="DSSKEY" cols="60" rows="13" wrap="off"> |
pascal@69 | 115 $DSSKEY |
pascal@69 | 116 </textarea></td> |
pascal@69 | 117 </tr> |
pascal@69 | 118 <tr> |
pascal@69 | 119 <td>RSA key</td> |
pascal@69 | 120 <td><textarea name="RSAKEY" cols="60" rows="12" wrap="off"> |
pascal@69 | 121 $RSAKEY |
pascal@69 | 122 </textarea></td> |
pascal@69 | 123 </tr> |
pascal@69 | 124 </table> |
pascal@69 | 125 You can set your dropbear key |
pascal@69 | 126 <pre> |
pascal@69 | 127 # uuencode -m - < /etc/dropbear/dropbear_dss_host_key |
pascal@69 | 128 </pre> |
pascal@69 | 129 Or your ssh key |
pascal@69 | 130 <pre> |
pascal@69 | 131 # dropbearconvert openssh dropbear /etc/ssh/id_dsa /dev/stdout | uuencode -m - |
pascal@69 | 132 </pre> |
pascal@69 | 133 Default DSS public key is |
pascal@69 | 134 <pre> |
pascal@69 | 135 $DSSPUB |
pascal@69 | 136 </pre> |
pascal@69 | 137 Default RSA public key is |
pascal@69 | 138 <pre> |
pascal@69 | 139 $RSAPUB |
pascal@69 | 140 </pre> |
pascal@69 | 141 EOT |
pascal@69 | 142 } |