|
|
@ -37,7 +37,6 @@ validate_section_dropbear() |
|
|
|
'RootPasswordAuth:bool:1' \ |
|
|
|
'RootPasswordAuth:bool:1' \ |
|
|
|
'RootLogin:bool:1' \ |
|
|
|
'RootLogin:bool:1' \ |
|
|
|
'rsakeyfile:file' \ |
|
|
|
'rsakeyfile:file' \ |
|
|
|
'dsskeyfile:file' \ |
|
|
|
|
|
|
|
'BannerFile:file' \ |
|
|
|
'BannerFile:file' \ |
|
|
|
'Port:list(port):22' \ |
|
|
|
'Port:list(port):22' \ |
|
|
|
'SSHKeepAlive:uinteger:300' \ |
|
|
|
'SSHKeepAlive:uinteger:300' \ |
|
|
@ -49,7 +48,7 @@ dropbear_instance() |
|
|
|
{ |
|
|
|
{ |
|
|
|
local PasswordAuth enable Interface GatewayPorts \ |
|
|
|
local PasswordAuth enable Interface GatewayPorts \ |
|
|
|
RootPasswordAuth RootLogin rsakeyfile \ |
|
|
|
RootPasswordAuth RootLogin rsakeyfile \ |
|
|
|
dsskeyfile BannerFile Port SSHKeepAlive IdleTimeout \ |
|
|
|
BannerFile Port SSHKeepAlive IdleTimeout \ |
|
|
|
mdns ipaddrs |
|
|
|
mdns ipaddrs |
|
|
|
|
|
|
|
|
|
|
|
validate_section_dropbear "${1}" || { |
|
|
|
validate_section_dropbear "${1}" || { |
|
|
@ -75,7 +74,6 @@ dropbear_instance() |
|
|
|
[ "${RootPasswordAuth}" -eq 0 ] && procd_append_param command -g |
|
|
|
[ "${RootPasswordAuth}" -eq 0 ] && procd_append_param command -g |
|
|
|
[ "${RootLogin}" -eq 0 ] && procd_append_param command -w |
|
|
|
[ "${RootLogin}" -eq 0 ] && procd_append_param command -w |
|
|
|
[ -n "${rsakeyfile}" ] && procd_append_param command -r "${rsakeyfile}" |
|
|
|
[ -n "${rsakeyfile}" ] && procd_append_param command -r "${rsakeyfile}" |
|
|
|
[ -n "${dsskeyfile}" ] && procd_append_param command -d "${dsskeyfile}" |
|
|
|
|
|
|
|
[ -n "${BannerFile}" ] && procd_append_param command -b "${BannerFile}" |
|
|
|
[ -n "${BannerFile}" ] && procd_append_param command -b "${BannerFile}" |
|
|
|
append_ports "${ipaddrs}" "${Port}" |
|
|
|
append_ports "${ipaddrs}" "${Port}" |
|
|
|
[ "${IdleTimeout}" -ne 0 ] && procd_append_param command -I "${IdleTimeout}" |
|
|
|
[ "${IdleTimeout}" -ne 0 ] && procd_append_param command -I "${IdleTimeout}" |
|
|
@ -86,7 +84,7 @@ dropbear_instance() |
|
|
|
|
|
|
|
|
|
|
|
keygen() |
|
|
|
keygen() |
|
|
|
{ |
|
|
|
{ |
|
|
|
for keytype in rsa dss; do |
|
|
|
for keytype in rsa; do |
|
|
|
# check for keys |
|
|
|
# check for keys |
|
|
|
key=dropbear/dropbear_${keytype}_host_key |
|
|
|
key=dropbear/dropbear_${keytype}_host_key |
|
|
|
[ -f /tmp/$key -o -s /etc/$key ] || { |
|
|
|
[ -f /tmp/$key -o -s /etc/$key ] || { |
|
|
@ -109,8 +107,7 @@ keygen() |
|
|
|
|
|
|
|
|
|
|
|
start_service() |
|
|
|
start_service() |
|
|
|
{ |
|
|
|
{ |
|
|
|
[ -s /etc/dropbear/dropbear_rsa_host_key -a \ |
|
|
|
[ -s /etc/dropbear/dropbear_rsa_host_key ] || keygen |
|
|
|
-s /etc/dropbear/dropbear_dss_host_key ] || keygen |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
. /lib/functions.sh |
|
|
|
. /lib/functions.sh |
|
|
|
. /lib/functions/network.sh |
|
|
|
. /lib/functions/network.sh |
|
|
|