bce6a4ad98668a88fa4909cdabd4502695470e32
2 # Copyright (C) 2016 Ian Kelling
4 # This program is free software; you can redistribute it and/or
5 # modify it under the terms of the GNU General Public License
6 # as published by the Free Software Foundation; either version 2
7 # of the License, or (at your option) any later version.
9 # This program is distributed in the hope that it will be useful,
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 # GNU General Public License for more details.
14 # You should have received a copy of the GNU General Public License
15 # along with this program; if not, write to the Free Software
16 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
20 trap 'echo "$0:$LINENO:error: \"$BASH_COMMAND\" returned $?" >&2' ERR
22 [[ $EUID == 0 ]] ||
exec sudo
-E "${BASH_SOURCE[0]}" "$@"
24 x
="$(readlink -f "$BASH_SOURCE")"; cd ${x%/*}
28 usage: ${0##*/} [-h|--help] [HOST/IP] [wrt-setup-local_ARGS]
29 setup my router in general: dhcp, dns, etc.
31 Default HOST is 10.0.0.1 or 10.2.0.1 if they are the gateway, otherwise
34 Note, use -m "''" to send an empty mac arg. When we get a new enough
35 bash, we can use ${@@Q} to properly pass an empty var.
38 Note, if we dont have internet yet, then just download the bash package,
39 scp it over manually and install it, eg:
41 cat /etc/opkg/distfeeds.conf
42 wget https://librecmc.org/librecmc/downloads/snapshots/v1.5.1-core/packages/mips_24kc/packages/bash_5.0-3_mips_24kc.ipk
43 scp bash_5.0-3_mips_24kc.ipk wrt:
45 opkg install /root/bash_5.0-3_mips_24kc.ipk
59 read -r _ _ gateway _
< <(ip
-4 route get
8.8.8.8)
65 echo "$0: error: gateway = $gateway and no HOST/IP specified"
72 # todo: ecdsa key not working with dropbear
73 cat ~
/.ssh
/{h
,hrsa
,home
}.pub |
ssh $h dd of
=/etc
/dropbear
/authorized_keys
74 scp
/a
/work
/libremanage
/libremanage
/a
/bin
/fai
/wrt-init
/a
/bin
/fai
/wrt-setup-local
/a
/bin
/cedit
/cedit
$h:/usr
/bin
75 # relay is built for openwrt 18.06.2, r7676-cddd7b4c77
77 #/a/opt/openwrt/source/bin/packages/mips_24kc/mypackages/relay_1.0-1_mips_24kc.ipk \
79 scp
/q
/root
/shadow
/router
/p
/c
/machine_specific
/wrt
/etc
/dropbear
/dropbear_rsa_host_key \
80 /p
/router-secrets
/p
/c
/machine_specific
/wrt
/etc
/wg.
{key
,psk
} /p
/c
/ptr-data
/p
/c
/{dnsmasq
,cmc-firewall
}-data /b
/bash-bear-trap
/bash-bear
$h:
81 scp ..
/openwrtkeyring
/usign
/* $h:/etc
/opkg
/keys
83 ssh $h wrt-init
${HOME_DOMAIN:-b8.nz} "$@"