|
| 1 | +Vagrant.configure(2) do |config| |
| 2 | + config.vm.box = "ubuntu/trusty64" |
| 3 | + config.vm.hostname = "graylog" |
| 4 | + |
| 5 | + config.vm.network :forwarded_port, guest: 80, host: 8080 |
| 6 | + config.vm.network :forwarded_port, guest: 12201, host: 12201, protocol: 'udp' |
| 7 | + config.vm.network :forwarded_port, guest: 12201, host: 12201, protocol: 'tcp' |
| 8 | + |
| 9 | + config.vm.provider "virtualbox" do |v| |
| 10 | + v.memory = 2048 |
| 11 | + end |
| 12 | + |
| 13 | + config.vm.synced_folder "..", "/graylog2-output-syslog" |
| 14 | + |
| 15 | + $script = <<SCRIPT |
| 16 | + apt-get update |
| 17 | + apt-get upgrade -y |
| 18 | + apt-get install -y openjdk-7-jre-headless rsyslog-gnutls gnutls-bin |
| 19 | + if [ ! -f graylog_latest.deb ]; then |
| 20 | + echo 'Going to download Graylog...' |
| 21 | + curl -S -s -L -o /vagrant/graylog_latest.deb -O https://packages.graylog2.org/releases/graylog-omnibus/ubuntu/graylog_latest.deb |
| 22 | + else |
| 23 | + dpkg -r /vagrant/graylog_latest.deb |
| 24 | + fi |
| 25 | + |
| 26 | + dpkg -i /vagrant/graylog_latest.deb |
| 27 | + graylog-ctl set-external-ip http://127.0.0.1:8080/api |
| 28 | +
|
| 29 | + if [ -f /opt/graylog/conf/server.jks ]; then |
| 30 | + openssl req -new -newkey rsa:4096 -days 365 -nodes -x509 \ |
| 31 | + -subj "/C=ORG/ST=NET/L=Graylog/O=IT/CN=server.graylog.org" \ |
| 32 | + -keyout server.key -out server.crt |
| 33 | +
|
| 34 | + openssl pkcs12 -export -name servercert -in server.crt -inkey server.key -out server.p12 -passout pass:123456 |
| 35 | +
|
| 36 | + keytool -importkeystore -destkeystore server.jks -srckeystore server.p12 -srcstoretype pkcs12 -alias servercert -srcstorepass 123456 -storepass 123456 |
| 37 | +
|
| 38 | + cp server.* /opt/graylog/conf |
| 39 | + fi |
| 40 | +
|
| 41 | + cp /vagrant/rsyslog-tls.conf /etc/rsyslog.d/90-tls.conf |
| 42 | + service rsyslog restart |
| 43 | +
|
| 44 | + PLUGIN=/graylog2-output-syslog/target/graylog-output-syslog-2.1.1.jar |
| 45 | + if [ -f $PLUGIN ]; then |
| 46 | + cp $PLUGIN /opt/graylog/plugin/ |
| 47 | + graylog-ctl restart |
| 48 | + fi |
| 49 | + |
| 50 | + graylog-ctl reconfigure |
| 51 | + |
| 52 | +SCRIPT |
| 53 | + |
| 54 | + config.vm.provision "shell", inline: $script |
| 55 | +end |
0 commit comments