#!/bin/sh /etc/rc.common # Copyright (C) 2006-2010 OpenWrt.org START=50 has_root_pwd() { local pwd=$([ -f "$1" ] && cat "$1") pwd="${pwd#*root:}" pwd="${pwd%%:*}" test -n "${pwd#!}" } has_ssh_pubkey() { ( test -x /usr/sbin/dropbear && grep -qs "^ssh-" /etc/dropbear/authorized_keys ) || \ ( test -x /usr/sbin/sshd && grep -qs "^ssh-" /root/.ssh/authorized_keys ) } start() { if ( ! has_ssh_pubkey && \ ! has_root_pwd /etc/passwd && ! has_root_pwd /etc/shadow ) || \ ( [ ! -x /usr/sbin/dropbear ] && [ ! -x /usr/sbin/sshd ] ); then telnetd -l /bin/login.sh fi } stop() { killall telnetd 2>/dev/null }