blob: 29c18b2b0c733aa82b3f29da8b7bc63c859afb9e (
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
87
88
89
|
#!/bin/bash
if [ -n "$DEBIAN_SCRIPT_DEBUG" ]; then set -v -x; DEBIAN_SCRIPT_TRACE=1; fi
${DEBIAN_SCRIPT_TRACE:+ echo "#42#DEBUG# RUNNING $0 $*"}
set -e
set -u
LOG_DIR=/var/log/vyatta/quagga
LOG_PDIR=${LOG_DIR%/*}
RUN_DIR=/var/run/vyatta/quagga
RUN_PDIR=${RUN_DIR%/*}
ETC_DIR=/etc/vyatta/quagga
ETC_PDIR=${ETC_DIR%/*}
# creating quaggavty group if it isn't already there
if ! getent group quaggavty >/dev/null; then
addgroup --system quaggavty >/dev/null
fi
# creating quagga group if it isn't already there
if ! getent group quagga >/dev/null; then
addgroup --system quagga >/dev/null
fi
# creating quagga user if he isn't already there
if ! getent passwd quagga >/dev/null; then
adduser \
--system \
--ingroup quagga \
--home /var/run/vyatta/ \
--gecos "Vyatta Quagga routing suite" \
--shell /bin/false \
quagga >/dev/null
fi
# Do not change permissions when upgrading as it would violate policy.
if [ "$1" = "install" ]; then
# Logfiles are group readable in case users were put into the quagga group.
mkdir -p $LOG_PDIR
chmod 0755 $LOG_PDIR
mkdir -p $LOG_DIR
chmod 0775 $LOG_DIR
chown quagga:quagga $LOG_DIR
# Strict permissions for the sockets.
mkdir -p $RUN_PDIR
chmod 0755 $RUN_PDIR
mkdir -p $RUN_DIR
chmod 0755 $RUN_DIR
chown quagga:quagga $RUN_DIR
# create empty config files
mkdir -p $ETC_PDIR
chmod 0755 $ETC_PDIR
mkdir -p $ETC_DIR
chmod 0775 $ETC_DIR
chown quagga:quaggavty $ETC_DIR
for daemon in zebra ripd ripngd ospfd ospf6d isisd bgpd ; do
if [ ! -e $ETC_DIR/${daemon}.conf ] ; then
touch $ETC_DIR/${daemon}.conf
chown quagga:quaggavty $ETC_DIR/${daemon}.conf
chmod 0640 $ETC_DIR/${daemon}.conf
cat <<-EOF > $ETC_DIR/${daemon}.conf
log syslog
log facility local7
EOF
fi
done
echo "smux peer .1.3.6.1.4.1.3317.1.2.5" >> $ETC_DIR/ospfd.conf
echo "smux peer .1.3.6.1.4.1.3317.1.2.2" >> $ETC_DIR/bgpd.conf
echo "smux peer .1.3.6.1.4.1.3317.1.2.3" >> $ETC_DIR/ripd.conf
if [ ! -e $ETC_DIR/vtysh.conf ] ; then
touch $ETC_DIR/vtysh.conf
chown quagga:quaggavty $ETC_DIR/vtysh.conf
chmod 0640 $ETC_DIR/vtysh.conf
cat <<-EOF >> $ETC_DIR/vtysh.conf
username root nopassword
EOF
fi
# Disable debian/ubuntu package init
update-rc.d -f quagga remove
fi
#DEBHELPER#
|