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