blob: f50eef795a3b8fbc549122689ac3358bedc7a7aa (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
#! /bin/bash
# Script to control telnet daemon parameters
# and block changes when logged in over telnet
# Block changes to telnet daemon when logged in over telnet
pid=$(who -um | awk -F " " '{print $7}')
if [ -n "$pid" ]; then
if ps --pid $(ps --pid $pid -o ppid=) -o cmd= | grep -q telnetd
then
echo "Please configure telnet settings via ssh or console."
exit 1
fi
fi
usage() {
echo "Usage: $0 enable <port>"
echo " $0 disable"
echo " $0 allow-root {true|false}"
exit 1;
}
allow-root() {
case "$1" in
true) ;;
false) ;;
*) echo "Expect true or false"
usage ;;
esac
sudo sed -i -e '/^# Pseudo-terminal (telnet)/,$d' /etc/securetty
if [ $1 = "false" ]; then
return
fi
sudo sh -c "cat >>/etc/securetty" <<EOF
# Pseudo-terminal (telnet)
pts/0
pts/1
pts/2
pts/3
pts/4
pts/5
pts/6
pts/7
pts/8
pts/9
pts/10
pts/11
pts/12
pts/13
pts/14
pts/15
pts/16
pts/17
pts/18
pts/19
EOF
}
case "$1" in
allow-root)
allow-root $2
;;
enable)
if [ -z "$2" ]
then echo "Missing port number";
usage
fi
exec sudo /opt/vyatta/sbin/telnetd.init restart $2 $3
;;
disable)
exec sudo /opt/vyatta/sbin/telnetd.init stop
;;
*)
echo "Unknown argument $1";
usage
;;
esac
|