blob: e43346995c95beb839c8f576ec976b66634159dc (
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
85
86
|
#!/bin/bash
prefix=@prefix@
exec_prefix=@exec_prefix@
sysconfdir=@sysconfdir@
bindir=@bindir@
sbindir=@sbindir@
# remove init of daemons that we start/stop
for init in ntp ssh snmpd keepalived ipvsadm; do
update-rc.d -f ${init} remove >/dev/null
done
# create symlinks
for bb in telnetd telnet tftp ftpget ftpput; do
ln -sf /bin/busybox ${sbindir}/${bb}
done
ln -sf ${bindir}/progress-indicator /usr/bin/progress-indicator
if [ "$sysconfdir" != "/etc" ]; then
# remove the config files and replace with blank ones
for conf in motd.tail ntp.conf syslog.conf logrotate.d/messages \
default/ssh ssh/ssh_host_key quagga/daemons quagga/zebra.conf \
quagga/bgpd.conf quagga/ospfd.conf quagga/ospf6d.conf \
quagga/ripd.conf quagga/ripngd.conf quagga/isisd.conf \
snmp/snmpd.conf snmp/snmptrapd.conf keepalived/keepalived.conf \
ipvsadm.rules default/ipvsadm resolv.conf
do
[ -f /etc/$conf ] && mv -f /etc/$conf /etc/$conf.vyatta-save
touch /etc/$conf
done
# use our config files
for conf in motd.tail syslog.conf; do
cp $sysconfdir/$conf /etc/$conf
done
cp $sysconfdir/logrotate_messages /etc/logrotate.d/messages
cp $sysconfdir/default_ssh /etc/default/ssh
# sudoers
[ -f /etc/sudoers ] && cp -pf /etc/sudoers /etc/sudoers.vyatta-save
# for "admin" level (FIXME)
sed -i 's/^# %sudo ALL=NOPASSWD: ALL/%sudo ALL=NOPASSWD: ALL/' /etc/sudoers
if ! grep -q '^%sudo ALL=NOPASSWD: ALL' /etc/sudoers; then
echo -e "\n%sudo ALL=NOPASSWD: ALL" >> /etc/sudoers
fi
# for "users" level
if ! grep -q "^%users ALL=NOPASSWD: ${bindir}/sudo-users/" /etc/sudoers; then
echo -e "\n%users ALL=NOPASSWD: ${bindir}/sudo-users/" >> /etc/sudoers
fi
# keep env vars
echo "Defaults env_keep+=VYATTA_*" >> /etc/sudoers
# ssh v1. remove the empty key file
rm /etc/ssh/ssh_host_key
# remove unnecessary files
rm /etc/logrotate.d/*.vyatta-save >& /dev/null
# quagga/daemons
sed 's/=no/=yes/' /etc/quagga/daemons.vyatta-save > /etc/quagga/daemons
echo "log syslog warnings" >> /etc/quagga/bgpd.conf
echo "log syslog warnings" >> /etc/quagga/isisd.conf
echo "log syslog warnings" >> /etc/quagga/ospf6d.conf
echo "log syslog warnings" >> /etc/quagga/ospf.conf
echo "log syslog warnings" >> /etc/quagga/ripd.conf
echo "log syslog warnings" >> /etc/quagga/ripngd.conf
echo "log syslog warnings" >> /etc/quagga/zebra.conf
fi
# update crontab for logrotate
grep -v logrotate /etc/crontab>/etc/crontab.$$
echo "*/10 * * * * /usr/sbin/logrotate /etc/logrotate.conf" >> /etc/crontab.$$
rm /etc/crontab
mv /etc/crontab.$$ /etc/crontab
crontab /etc/crontab
# create needed directories
mkdir -p /etc/raddb
mkdir -p /var/log/{user,vrrpd}
touch /etc/environment
|