install_vuls.sh
1 |
#!/bin/bash |
---|---|
2 |
|
3 |
|
4 |
VULS_USER='vuls' |
5 |
FROM_DATE='2017' |
6 |
|
7 |
apt-get update |
8 |
apt-get upgrade -y |
9 |
|
10 |
apt-get install -y sqlite git gcc golang make libc6-dev |
11 |
adduser --system --shell /bin/bash ${VULS_USER} |
12 |
|
13 |
grep GOROOT /etc/profile > /dev/null ; if [ $? != 0 ];then |
14 |
cat >> /etc/profile << EOF |
15 |
export GOROOT=/usr/lib/go |
16 |
export GOPATH=\$HOME/go |
17 |
export PATH=\$PATH:\$GOROOT/bin:\$GOPATH/bin |
18 |
EOF |
19 |
fi |
20 |
|
21 |
mkdir /var/log/vuls |
22 |
chown -R ${VULS_USER}: /var/log/vuls |
23 |
|
24 |
cat > /tmp/install_vuls.sh << EOF |
25 |
mkdir -p \$GOPATH/src/github.com/kotakanbe |
26 |
cd \$GOPATH/src/github.com/kotakanbe |
27 |
git clone https://github.com/kotakanbe/go-cve-dictionary.git |
28 |
cd go-cve-dictionary |
29 |
make install |
30 |
|
31 |
mkdir -p \$GOPATH/src/github.com/future-architect |
32 |
cd \$GOPATH/src/github.com/future-architect |
33 |
git clone https://github.com/future-architect/vuls.git |
34 |
cd vuls |
35 |
make install |
36 |
|
37 |
echo ' |
38 |
[servers] |
39 |
|
40 |
[servers.192-168-0-26] |
41 |
user = "root" |
42 |
host = "192.168.0.26" |
43 |
port = "22" |
44 |
keyPath = "/home/vuls/id_rsa_one" |
45 |
' > ~/config.toml |
46 |
|
47 |
EOF |
48 |
|
49 |
chmod +x /tmp/install_vuls.sh |
50 |
su - ${VULS_USER} -c /tmp/install_vuls.sh |
51 |
rm /tmp/install_vuls.sh |
52 |
|
53 |
echo "Populating database from $FROM_DATE" |
54 |
for i in `seq $FROM_DATE $(date +"%Y")`; do |
55 |
su - ${VULS_USER} -c "go-cve-dictionary fetchnvd -years $i" |
56 |
done |
57 |
|
58 |
|
59 |
|