mirror of
https://github.com/pavel-odintsov/fastnetmon
synced 2024-11-22 20:42:03 +01:00
Fixed bunch of paths to old versions of FNM
This commit is contained in:
parent
ab84924ded
commit
1fdde91cbb
4
LICENSE
4
LICENSE
@ -290,8 +290,8 @@ to attach them to the start of each source file to most effectively
|
|||||||
convey the exclusion of warranty; and each file should have at least
|
convey the exclusion of warranty; and each file should have at least
|
||||||
the "copyright" line and a pointer to where the full notice is found.
|
the "copyright" line and a pointer to where the full notice is found.
|
||||||
|
|
||||||
FastNetMon - High Performance Network Load Analyzer with PCAP/ULOG2 support
|
FastNetMon - High Performance DDoS sensor software
|
||||||
Copyright (C) 2013 FastVPSEestiOu
|
Copyright 2017 FastNetMon LTD
|
||||||
|
|
||||||
This program is free software; you can redistribute it and/or modify
|
This program is free software; you can redistribute it and/or modify
|
||||||
it under the terms of the GNU General Public License as published by
|
it under the terms of the GNU General Public License as published by
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
### How I can switch to current Git version?
|
### How I can switch to current Git version?
|
||||||
|
|
||||||
First of all, please install FastNetMon with automatic installer [here](https://github.com/FastVPSEestiOu/fastnetmon/blob/master/docs/INSTALL.md)
|
First of all, please install FastNetMon with automatic installer [here](https://github.com/pavel-odintsov/fastnetmon/blob/master/docs/INSTALL.md)
|
||||||
|
|
||||||
Than switch to master branch and rebuild toolkit:
|
Than switch to master branch and rebuild toolkit:
|
||||||
```bash
|
```bash
|
||||||
@ -12,4 +12,4 @@ make
|
|||||||
./fastnetmon
|
./fastnetmon
|
||||||
```
|
```
|
||||||
|
|
||||||
You could use ```git log``` command for checking about last commits and compare with [GitHub](https://github.com/FastVPSEestiOu/fastnetmon/commits/master)
|
You could use ```git log``` command for checking about last commits and compare with [GitHub](https://github.com/pavel-odintsov/fastnetmon/commits/master)
|
||||||
|
@ -7,7 +7,7 @@ docker pull robertoberto/fastnetmon
|
|||||||
First, get fastnetmon.conf from github, edit it after download.
|
First, get fastnetmon.conf from github, edit it after download.
|
||||||
|
|
||||||
```
|
```
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/fastnetmon.conf -O /etc/fastnetmon.conf
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/fastnetmon.conf -O /etc/fastnetmon.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
@ -89,7 +89,7 @@ docker run \
|
|||||||
-t panubo/postfix
|
-t panubo/postfix
|
||||||
```
|
```
|
||||||
|
|
||||||
When you link another container with docker other container name will be added to /etc/hosts pointing to its internal IP. So you can use python script notify (https://github.com/FastVPSEestiOu/fastnetmon/blob/master/src/scripts/fastnetmon_notify.py), instead of bash one.
|
When you link another container with docker other container name will be added to /etc/hosts pointing to its internal IP. So you can use python script notify (https://github.com/pavel-odintsov/fastnetmon/blob/master/src/scripts/fastnetmon_notify.py), instead of bash one.
|
||||||
|
|
||||||
Just change MAIL_HOSTNAME="localhost" to MAIL_HOSTNAME="postfix" if you start fastnetmon docker container with --link postfix:postfix and create another docker instance with panubo/postfix as --name postfix, for example.
|
Just change MAIL_HOSTNAME="localhost" to MAIL_HOSTNAME="postfix" if you start fastnetmon docker container with --link postfix:postfix and create another docker instance with panubo/postfix as --name postfix, for example.
|
||||||
|
|
||||||
@ -121,8 +121,8 @@ touch /var/log/fastnetmon_attacks /var/log/fastnetmon.log /etc/networks_list /et
|
|||||||
cp /etc/fastnetmon.conf /etc/fastnetmon.conf.bkp
|
cp /etc/fastnetmon.conf /etc/fastnetmon.conf.bkp
|
||||||
cp /usr/local/fastnetmon/fastnetmon_notify.py /usr/local/fastnetmon/fastnetmon_notify.py.bkp
|
cp /usr/local/fastnetmon/fastnetmon_notify.py /usr/local/fastnetmon/fastnetmon_notify.py.bkp
|
||||||
|
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/scripts/fastnetmon_notify.py -O /usr/local/fastnetmon/fastnetmon_notify.py
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/scripts/fastnetmon_notify.py -O /usr/local/fastnetmon/fastnetmon_notify.py
|
||||||
chmod +x /usr/local/fastnetmon/fastnetmon_notify.py
|
chmod +x /usr/local/fastnetmon/fastnetmon_notify.py
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/fastnetmon.conf -O /etc/fastnetmon.conf
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/fastnetmon.conf -O /etc/fastnetmon.conf
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ Install FastNetMon:
|
|||||||
# For compiling on CentOS please remove line "STATIC = -static" from file Makefile and replace line "LIBS += -lboost_thread" by line "LIBS += -lboost_thread-mt"
|
# For compiling on CentOS please remove line "STATIC = -static" from file Makefile and replace line "LIBS += -lboost_thread" by line "LIBS += -lboost_thread-mt"
|
||||||
|
|
||||||
cd /usr/src
|
cd /usr/src
|
||||||
git clone https://github.com/FastVPSEestiOu/fastnetmon.git
|
git clone https://github.com/pavel-odintsov/fastnetmon.git
|
||||||
cd fastnetmon/src
|
cd fastnetmon/src
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@ Thanks file! For all peoples which helped this project :)
|
|||||||
- Roland Dobbins rdobbins at arbor.net for mitivating to add flow support
|
- Roland Dobbins rdobbins at arbor.net for mitivating to add flow support
|
||||||
- waszi for testing DNA/ZC mode
|
- waszi for testing DNA/ZC mode
|
||||||
- Martin Stoyanov for guides for Slackware
|
- Martin Stoyanov for guides for Slackware
|
||||||
- Andreas Begemann for debugging issue https://github.com/FastVPSEestiOu/fastnetmon/issues/90
|
- Andreas Begemann for debugging issue https://github.com/pavel-odintsov/fastnetmon/issues/90
|
||||||
- Anatoliy Poloz for VMs with FreebSD 9, 10, 11
|
- Anatoliy Poloz for VMs with FreebSD 9, 10, 11
|
||||||
- Cojacfar / https://github.com/Cojacfar help with documentation transaltion!
|
- Cojacfar / https://github.com/Cojacfar help with documentation transaltion!
|
||||||
- Thomas Mangin for help with ExaBGP integration
|
- Thomas Mangin for help with ExaBGP integration
|
||||||
|
@ -28,7 +28,7 @@ RUN apt-get update && apt-get install -y \
|
|||||||
|
|
||||||
RUN pip install exabgp
|
RUN pip install exabgp
|
||||||
|
|
||||||
RUN cd /usr/src; git clone https://github.com/FastVPSEestiOu/fastnetmon.git
|
RUN cd /usr/src; git clone https://github.com/pavel-odintsov/fastnetmon.git
|
||||||
|
|
||||||
#COPY exabgp_blackhole.conf /etc/exabgp_blackhole.conf
|
#COPY exabgp_blackhole.conf /etc/exabgp_blackhole.conf
|
||||||
|
|
||||||
|
@ -15,7 +15,7 @@ LIB_DEPENDS= liblog4cpp.so:${PORTSDIR}/devel/log4cpp \
|
|||||||
libboost_regex.so:${PORTSDIR}/devel/boost-libs
|
libboost_regex.so:${PORTSDIR}/devel/boost-libs
|
||||||
|
|
||||||
USE_GITHUB= yes
|
USE_GITHUB= yes
|
||||||
GH_ACCOUNT= FastVPSEestiOu
|
GH_ACCOUNT= pavel-odintsov
|
||||||
|
|
||||||
# TODO: enable this after updating /usr/ports/{UIDs,GIDs}
|
# TODO: enable this after updating /usr/ports/{UIDs,GIDs}
|
||||||
#USERS= fastnetmon
|
#USERS= fastnetmon
|
||||||
|
@ -2,4 +2,4 @@ FastNetMon - A high performance DoS/DDoS load analyzer built on top
|
|||||||
of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap,
|
of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap,
|
||||||
PF_RING, PCAP).
|
PF_RING, PCAP).
|
||||||
|
|
||||||
WWW: https://github.com/FastVPSEestiOu/fastnetmon
|
WWW: https://fastnetmon.com
|
||||||
|
@ -51,7 +51,7 @@ Create zram disk for build speedup:
|
|||||||
modprobe zram num_devices=1
|
modprobe zram num_devices=1
|
||||||
echo $((20*1024*1024*1024)) > /sys/block/zram0/disksize
|
echo $((20*1024*1024*1024)) > /sys/block/zram0/disksize
|
||||||
mkdir /vz_zram
|
mkdir /vz_zram
|
||||||
mkfs.ext4 /dev/zram0
|
mkfs.ext4 /dev/zram0
|
||||||
mount /dev/zram0 /vz_zram
|
mount /dev/zram0 /vz_zram
|
||||||
mkdir /vz_zram/private
|
mkdir /vz_zram/private
|
||||||
|
|
||||||
@ -59,142 +59,142 @@ mkdir /vz_zram/private
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
For renaming of result packages you could use:
|
For renaming of result packages you could use:
|
||||||
find -type f| perl -e 'do{ chomp; my @m=split "/", $_; my @n = split /\./, $_; rename($_, "fastnetmon-git-447aa5b86bb5a248e310c15a4d5945e72594d6cf-$m[1]_x86_64.$n[-1]"); } for <>'
|
find -type f| perl -e 'do{ chomp; my @m=split "/", $_; my @n = split /\./, $_; rename($_, "fastnetmon-git-447aa5b86bb5a248e310c15a4d5945e72594d6cf-$m[1]_x86_64.$n[-1]"); } for <>'
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var distros_x86_64 = []string{ "centos-6-x86_64", "centos-7-x86_64", "debian-6.0-x86_64", "debian-7.0-x86_64", "debian-8.0-x86_64", "ubuntu-12.04-x86_64", "ubuntu-14.04-x86_64" }
|
var distros_x86_64 = []string{"centos-6-x86_64", "centos-7-x86_64", "debian-6.0-x86_64", "debian-7.0-x86_64", "debian-8.0-x86_64", "ubuntu-12.04-x86_64", "ubuntu-14.04-x86_64"}
|
||||||
|
|
||||||
var distros_x86 = []string{ "centos-6-x86", "debian-6.0-x86", "debian-7.0-x86", "ubuntu-12.04-x86", "ubuntu-14.04-x86" }
|
var distros_x86 = []string{"centos-6-x86", "debian-6.0-x86", "debian-7.0-x86", "ubuntu-12.04-x86", "ubuntu-14.04-x86"}
|
||||||
|
|
||||||
var start_ctid_number = 1000
|
var start_ctid_number = 1000
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
target_directory, err := ioutil.TempDir("/root", "builded_packages")
|
target_directory, err := ioutil.TempDir("/root", "builded_packages")
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Fatal("Can't create temp folder", err)
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Println("We will store result data to folder", target_directory)
|
if err != nil {
|
||||||
|
log.Fatal("Can't create temp folder", err)
|
||||||
_ = distros_x86
|
}
|
||||||
var wg sync.WaitGroup
|
|
||||||
|
|
||||||
if _, err := os.Stat(public_key_path); os.IsNotExist(err) {
|
fmt.Println("We will store result data to folder", target_directory)
|
||||||
log.Fatal("Please generate ssh keys for root here")
|
|
||||||
}
|
|
||||||
|
|
||||||
for element_number, distro := range distros_x86_64 {
|
_ = distros_x86
|
||||||
// Increment the WaitGroup counter.
|
var wg sync.WaitGroup
|
||||||
wg.Add(1)
|
|
||||||
|
|
||||||
go func(position int, distribution_name string) {
|
if _, err := os.Stat(public_key_path); os.IsNotExist(err) {
|
||||||
// Decrement the counter when the goroutine completes.
|
log.Fatal("Please generate ssh keys for root here")
|
||||||
defer wg.Done()
|
}
|
||||||
|
|
||||||
ip_address := fmt.Sprintf("10.10.10.%d", position)
|
for element_number, distro := range distros_x86_64 {
|
||||||
ctid := start_ctid_number + position
|
// Increment the WaitGroup counter.
|
||||||
ctid_as_string := strconv.Itoa(ctid)
|
wg.Add(1)
|
||||||
|
|
||||||
vzctl_create_as_string := fmt.Sprintf("create %d --ostemplate %s --config vswap-4g --layout simfs --ipadd %s --diskspace 20G --hostname ct%d.test.com --private %s/%d", ctid, distribution_name, ip_address, ctid, container_private_path, ctid)
|
go func(position int, distribution_name string) {
|
||||||
|
// Decrement the counter when the goroutine completes.
|
||||||
|
defer wg.Done()
|
||||||
|
|
||||||
r := regexp.MustCompile("[^\\s]+")
|
ip_address := fmt.Sprintf("10.10.10.%d", position)
|
||||||
vzctl_create_as_list := r.FindAllString(vzctl_create_as_string, -1)
|
ctid := start_ctid_number + position
|
||||||
|
ctid_as_string := strconv.Itoa(ctid)
|
||||||
|
|
||||||
fmt.Println("Create container ", ctid_as_string)
|
vzctl_create_as_string := fmt.Sprintf("create %d --ostemplate %s --config vswap-4g --layout simfs --ipadd %s --diskspace 20G --hostname ct%d.test.com --private %s/%d", ctid, distribution_name, ip_address, ctid, container_private_path, ctid)
|
||||||
create_cmd := exec.Command("/usr/sbin/vzctl", vzctl_create_as_list...)
|
|
||||||
//cmd.Stdout = os.Stdout
|
|
||||||
//cmd.Stderr = os.Stderr
|
|
||||||
err := create_cmd.Run()
|
|
||||||
|
|
||||||
if err != nil {
|
r := regexp.MustCompile("[^\\s]+")
|
||||||
log.Println("create failed")
|
vzctl_create_as_list := r.FindAllString(vzctl_create_as_string, -1)
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Run it
|
fmt.Println("Create container ", ctid_as_string)
|
||||||
fmt.Println("Start container ", ctid_as_string)
|
create_cmd := exec.Command("/usr/sbin/vzctl", vzctl_create_as_list...)
|
||||||
// We whould wait here for full CT startup
|
//cmd.Stdout = os.Stdout
|
||||||
start_cmd := exec.Command("/usr/sbin/vzctl", "start", ctid_as_string, "--wait");
|
//cmd.Stderr = os.Stderr
|
||||||
// start_cmd.Stdout = os.Stdout
|
err := create_cmd.Run()
|
||||||
// start_cmd.Stderr = os.Stderr
|
|
||||||
err = start_cmd.Run()
|
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Println("start failed")
|
log.Println("create failed")
|
||||||
log.Fatal(err)
|
log.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
||||||
vzroot_path := fmt.Sprintf("/vz/root/%d", ctid)
|
// Run it
|
||||||
auth_keys_path := vzroot_path + "/root/.ssh/authorized_keys"
|
fmt.Println("Start container ", ctid_as_string)
|
||||||
|
// We whould wait here for full CT startup
|
||||||
|
start_cmd := exec.Command("/usr/sbin/vzctl", "start", ctid_as_string, "--wait")
|
||||||
|
// start_cmd.Stdout = os.Stdout
|
||||||
|
// start_cmd.Stderr = os.Stderr
|
||||||
|
err = start_cmd.Run()
|
||||||
|
|
||||||
os.Mkdir(vzroot_path + "/root/.ssh", 0600)
|
if err != nil {
|
||||||
copy_key_command := exec.Command("cp", public_key_path, auth_keys_path)
|
log.Println("start failed")
|
||||||
copy_key_command.Run()
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
if err != nil {
|
vzroot_path := fmt.Sprintf("/vz/root/%d", ctid)
|
||||||
log.Println("Can't copy ssh keys to container")
|
auth_keys_path := vzroot_path + "/root/.ssh/authorized_keys"
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
os.Chmod(auth_keys_path, 0400)
|
os.Mkdir(vzroot_path+"/root/.ssh", 0600)
|
||||||
|
copy_key_command := exec.Command("cp", public_key_path, auth_keys_path)
|
||||||
|
copy_key_command.Run()
|
||||||
|
|
||||||
wget_installer_cmd := exec.Command("wget", "--no-check-certificate", "https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/fastnetmon_install.pl", "-O" + vzroot_path + "/root/fastnetmon_install.pl")
|
if err != nil {
|
||||||
wget_installer_cmd.Run()
|
log.Println("Can't copy ssh keys to container")
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
if err != nil {
|
os.Chmod(auth_keys_path, 0400)
|
||||||
log.Println("Can't download FastNetMon installer to container")
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Remove ssh known hosst file because in other case ssh will fail
|
wget_installer_cmd := exec.Command("wget", "--no-check-certificate", "https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/fastnetmon_install.pl", "-O"+vzroot_path+"/root/fastnetmon_install.pl")
|
||||||
os.Remove("/root/.ssh/known_hosts")
|
wget_installer_cmd.Run()
|
||||||
|
|
||||||
// perl /root/fastnetmon_install.pl --use-git-master --create-binary-bundle --build-binary-environment"
|
if err != nil {
|
||||||
// install_cmd := exec.Command("ssh", "-lroot", ip_address, "perl", "/root/fastnetmon_install.pl")
|
log.Println("Can't download FastNetMon installer to container")
|
||||||
install_cmd := exec.Command("ssh", "-o", "UserKnownHostsFile=/dev/null", "-o", "StrictHostKeyChecking=no", "-lroot", ip_address, "perl", "/root/fastnetmon_install.pl", "--use-git-master", "--create-binary-bundle", "--build-binary-environment")
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
var stdout_output bytes.Buffer
|
// Remove ssh known hosst file because in other case ssh will fail
|
||||||
var stderr_output bytes.Buffer
|
os.Remove("/root/.ssh/known_hosts")
|
||||||
|
|
||||||
install_cmd.Stdout = &stdout_output
|
// perl /root/fastnetmon_install.pl --use-git-master --create-binary-bundle --build-binary-environment"
|
||||||
install_cmd.Stderr = &stderr_output
|
// install_cmd := exec.Command("ssh", "-lroot", ip_address, "perl", "/root/fastnetmon_install.pl")
|
||||||
|
install_cmd := exec.Command("ssh", "-o", "UserKnownHostsFile=/dev/null", "-o", "StrictHostKeyChecking=no", "-lroot", ip_address, "perl", "/root/fastnetmon_install.pl", "--use-git-master", "--create-binary-bundle", "--build-binary-environment")
|
||||||
|
|
||||||
install_cmd.Run()
|
var stdout_output bytes.Buffer
|
||||||
|
var stderr_output bytes.Buffer
|
||||||
|
|
||||||
fmt.Println("Command call on " + distribution_name + " finished")
|
install_cmd.Stdout = &stdout_output
|
||||||
|
install_cmd.Stderr = &stderr_output
|
||||||
|
|
||||||
fmt.Println("stdout")
|
install_cmd.Run()
|
||||||
fmt.Println(stdout_output.String())
|
|
||||||
|
|
||||||
fmt.Println("stderr")
|
fmt.Println("Command call on " + distribution_name + " finished")
|
||||||
fmt.Println(stderr_output.String())
|
|
||||||
|
|
||||||
fmt.Println("Get produced data from container to host system")
|
fmt.Println("stdout")
|
||||||
|
fmt.Println(stdout_output.String())
|
||||||
|
|
||||||
copy_cmd := exec.Command("cp", "-rf", "/vz/root/" + ctid_as_string + "/tmp/result_data", target_directory + "/" + distribution_name)
|
fmt.Println("stderr")
|
||||||
copy_cmd.Run()
|
fmt.Println(stderr_output.String())
|
||||||
|
|
||||||
// Stop it
|
fmt.Println("Get produced data from container to host system")
|
||||||
fmt.Println("Stop container ", ctid_as_string)
|
|
||||||
stop_cmd := exec.Command("/usr/sbin/vzctl", "stop", ctid_as_string);
|
|
||||||
err = stop_cmd.Run()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
log.Println("stop failed")
|
|
||||||
log.Fatal(err)
|
|
||||||
}
|
|
||||||
|
|
||||||
fmt.Println("Destroy container ", ctid_as_string)
|
copy_cmd := exec.Command("cp", "-rf", "/vz/root/"+ctid_as_string+"/tmp/result_data", target_directory+"/"+distribution_name)
|
||||||
destroy_cmd := exec.Command("/usr/sbin/vzctl", "destroy", ctid_as_string);
|
copy_cmd.Run()
|
||||||
err = destroy_cmd.Run()
|
|
||||||
|
|
||||||
if err != nil {
|
// Stop it
|
||||||
log.Println("destroy failed")
|
fmt.Println("Stop container ", ctid_as_string)
|
||||||
log.Fatal(err)
|
stop_cmd := exec.Command("/usr/sbin/vzctl", "stop", ctid_as_string)
|
||||||
}
|
err = stop_cmd.Run()
|
||||||
} (element_number, distro)
|
|
||||||
}
|
|
||||||
|
|
||||||
wg.Wait()
|
if err != nil {
|
||||||
|
log.Println("stop failed")
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
|
||||||
|
fmt.Println("Destroy container ", ctid_as_string)
|
||||||
|
destroy_cmd := exec.Command("/usr/sbin/vzctl", "destroy", ctid_as_string)
|
||||||
|
err = destroy_cmd.Run()
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
log.Println("destroy failed")
|
||||||
|
log.Fatal(err)
|
||||||
|
}
|
||||||
|
}(element_number, distro)
|
||||||
|
}
|
||||||
|
|
||||||
|
wg.Wait()
|
||||||
}
|
}
|
||||||
|
@ -229,7 +229,7 @@ exabgp_announce_whole_subnet = off
|
|||||||
# Please we aware! Flow Spec announce triggered when we collect some details about attack,
|
# Please we aware! Flow Spec announce triggered when we collect some details about attack,
|
||||||
# i.e. when we call attack_details script
|
# i.e. when we call attack_details script
|
||||||
# Please disable exabgp_announce_host and exabgp_announce_whole_subnet if you want to use this feature
|
# Please disable exabgp_announce_host and exabgp_announce_whole_subnet if you want to use this feature
|
||||||
# Please use ExaBGP v4 only (Git version), for more details: https://github.com/FastVPSEestiOu/fastnetmon/blob/master/docs/BGP_FLOW_SPEC.md
|
# Please use ExaBGP v4 only (Git version), for more details: https://github.com/pavel-odintsov/fastnetmon/blob/master/docs/BGP_FLOW_SPEC.md
|
||||||
exabgp_flow_spec_announces = off
|
exabgp_flow_spec_announces = off
|
||||||
|
|
||||||
# GoBGP intergation
|
# GoBGP intergation
|
||||||
@ -240,7 +240,7 @@ gobgp_announce_whole_subnet = off
|
|||||||
|
|
||||||
# Graphite monitoring
|
# Graphite monitoring
|
||||||
# InfluxDB is also supported, please check our reference:
|
# InfluxDB is also supported, please check our reference:
|
||||||
# https://github.com/FastVPSEestiOu/fastnetmon/blob/master/docs/INFLUXDB_INTEGRATION.md
|
# https://github.com/pavel-odintsov/fastnetmon/blob/master/docs/INFLUXDB_INTEGRATION.md
|
||||||
graphite = off
|
graphite = off
|
||||||
# Please use only IP because domain names are not allowed here
|
# Please use only IP because domain names are not allowed here
|
||||||
graphite_host = 127.0.0.1
|
graphite_host = 127.0.0.1
|
||||||
|
@ -14,11 +14,11 @@ Release: 1%{?dist}
|
|||||||
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/FastVPSEestiOu/fastnetmon
|
URL: https://fastnetmon.com
|
||||||
|
|
||||||
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
||||||
#Source0: https://github.com/FastVPSEestiOu/fastnetmon/archive/v%{version}.tar.gz
|
#Source0: https://github.com/pavel-odintsov/fastnetmon/archive/v%{version}.tar.gz
|
||||||
Source0: https://github.com/FastVPSEestiOu/fastnetmon/archive/fastnetmon-%{version}.tar.gz
|
Source0: https://github.com/pavel-odintsov/fastnetmon/archive/fastnetmon-%{version}.tar.gz
|
||||||
|
|
||||||
# Yes, it's bad idea to specify fixed version of PF_RING but they have strange issue when we use another library version
|
# Yes, it's bad idea to specify fixed version of PF_RING but they have strange issue when we use another library version
|
||||||
|
|
||||||
|
@ -14,11 +14,11 @@ Release: 1%{?dist}
|
|||||||
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/FastVPSEestiOu/fastnetmon
|
URL: https://fastnetmon.com
|
||||||
|
|
||||||
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
||||||
#Source0: https://github.com/FastVPSEestiOu/fastnetmon/archive/v%{version}.tar.gz
|
#Source0: https://github.com/pavel-odintsov/fastnetmon/archive/v%{version}.tar.gz
|
||||||
Source0: https://github.com/FastVPSEestiOu/fastnetmon/archive/fastnetmon-%{version}.tar.gz
|
Source0: https://github.com/pavel-odintsov/fastnetmon/archive/fastnetmon-%{version}.tar.gz
|
||||||
|
|
||||||
# Yes, it's bad idea to specify fixed version of PF_RING but they have strange issue when we use another library version
|
# Yes, it's bad idea to specify fixed version of PF_RING but they have strange issue when we use another library version
|
||||||
|
|
||||||
|
@ -5,7 +5,7 @@
|
|||||||
|
|
||||||
%global fastnetmon_commit 86b951b6dffae0fc1e6cbf66fe5f0f4aa61aaa5a
|
%global fastnetmon_commit 86b951b6dffae0fc1e6cbf66fe5f0f4aa61aaa5a
|
||||||
%global fastnetmon_project_name fastnetmon
|
%global fastnetmon_project_name fastnetmon
|
||||||
%global fastnetmon_company FastVPSEestiOu
|
%global fastnetmon_company FastNetMon LTD
|
||||||
|
|
||||||
Name: fastnetmon
|
Name: fastnetmon
|
||||||
Version: 1.1.1
|
Version: 1.1.1
|
||||||
@ -14,7 +14,7 @@ Release: 1%{?dist}
|
|||||||
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/FastVPSEestiOu/fastnetmon
|
URL: https://fastnetmon.com
|
||||||
|
|
||||||
Source0: https://github.com/%{fastnetmon_company}/%{name}/archive/%{fastnetmon_commit}/%{name}-%{fastnetmon_commit}.tar.gz
|
Source0: https://github.com/%{fastnetmon_company}/%{name}/archive/%{fastnetmon_commit}/%{name}-%{fastnetmon_commit}.tar.gz
|
||||||
|
|
||||||
|
@ -218,7 +218,7 @@ sub main {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ($os_type eq 'macosx') {
|
if ($os_type eq 'macosx') {
|
||||||
# Really strange issue https://github.com/FastVPSEestiOu/fastnetmon/issues/415
|
# Really strange issue https://github.com/pavel-odintsov/fastnetmon/issues/415
|
||||||
$we_have_hiredis_support = 0;
|
$we_have_hiredis_support = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -8,7 +8,7 @@ fastnetmon [--daemonize]
|
|||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
FastNetMon - a high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
FastNetMon - a high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
|
|
||||||
For more information about configuration please look at comments in /etc/fastnetmon.conf and check GitHub page: https://github.com/FastVPSEestiOu/fastnetmon.
|
For more information about configuration please look at comments in /etc/fastnetmon.conf and check GitHub page: https://github.com/pavel-odintsov/fastnetmon.
|
||||||
.SH OPTIONS
|
.SH OPTIONS
|
||||||
The fastnetmon has only single command line option --daemonize which used for forking and detaching it from the terminal.
|
The fastnetmon has only single command line option --daemonize which used for forking and detaching it from the terminal.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
|
@ -9,7 +9,7 @@ local json = require("json")
|
|||||||
local ffi = require("ffi")
|
local ffi = require("ffi")
|
||||||
|
|
||||||
-- Load declaration from the inside separate header file
|
-- Load declaration from the inside separate header file
|
||||||
-- This code should be in sync with https://github.com/FastVPSEestiOu/fastnetmon/blob/master/src/netflow_plugin/netflow.h
|
-- This code should be in sync with https://github.com/pavel-odintsov/fastnetmon/blob/master/src/netflow_plugin/netflow.h
|
||||||
-- And we use uintXX_t instead u_intXX_t here
|
-- And we use uintXX_t instead u_intXX_t here
|
||||||
ffi.cdef([[typedef struct __attribute__((packed)) NF5_FLOW {
|
ffi.cdef([[typedef struct __attribute__((packed)) NF5_FLOW {
|
||||||
uint32_t src_ip, dest_ip, nexthop_ip;
|
uint32_t src_ip, dest_ip, nexthop_ip;
|
||||||
|
@ -579,7 +579,7 @@ void nf10_flowset_to_store(u_int8_t* pkt, size_t len, struct NF10_HEADER* nf10_h
|
|||||||
}
|
}
|
||||||
|
|
||||||
void nf9_flowset_to_store(u_int8_t* pkt, size_t len, struct NF9_HEADER* nf9_hdr, netflow9_template_records_map& template_records) {
|
void nf9_flowset_to_store(u_int8_t* pkt, size_t len, struct NF9_HEADER* nf9_hdr, netflow9_template_records_map& template_records) {
|
||||||
// Should be done according to https://github.com/FastVPSEestiOu/fastnetmon/issues/147
|
// Should be done according to https://github.com/pavel-odintsov/fastnetmon/issues/147
|
||||||
// if (template->total_len > len)
|
// if (template->total_len > len)
|
||||||
// return 1;
|
// return 1;
|
||||||
|
|
||||||
|
@ -7,10 +7,10 @@ pip install exabgp
|
|||||||
```
|
```
|
||||||
- Download configs and scripts:
|
- Download configs and scripts:
|
||||||
```bash
|
```bash
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/scripts/exabgp_network_collector.conf -O/etc/exabgp_network_collector.conf
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/scripts/exabgp_network_collector.conf -O/etc/exabgp_network_collector.conf
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/scripts/bgp_network_retriever.py -O/usr/local/bin/bgp_network_retriever.py
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/scripts/bgp_network_retriever.py -O/usr/local/bin/bgp_network_retriever.py
|
||||||
|
|
||||||
wget https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/scripts/bgp_network_collector.py -O/usr/local/bin/bgp_network_collector.py
|
wget https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/scripts/bgp_network_collector.py -O/usr/local/bin/bgp_network_collector.py
|
||||||
|
|
||||||
chmod +x /usr/local/bin/bgp_network_retriever.py /usr/local/bin/bgp_network_collector.py
|
chmod +x /usr/local/bin/bgp_network_retriever.py /usr/local/bin/bgp_network_collector.py
|
||||||
```
|
```
|
||||||
|
@ -129,7 +129,7 @@ DOC
|
|||||||
# Copy bundle to build tree
|
# Copy bundle to build tree
|
||||||
`cp $archive_name $rpm_sources_path/archive.tar.gz`;
|
`cp $archive_name $rpm_sources_path/archive.tar.gz`;
|
||||||
|
|
||||||
`wget --no-check-certificate https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/fastnetmon.conf -O$rpm_sources_path/fastnetmon.conf`;
|
`wget --no-check-certificate https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/fastnetmon.conf -O$rpm_sources_path/fastnetmon.conf`;
|
||||||
|
|
||||||
open my $system_v_init_fl, ">", "$rpm_sources_path/system_v_init";
|
open my $system_v_init_fl, ">", "$rpm_sources_path/system_v_init";
|
||||||
print {$system_v_init_fl} $system_v_init_script;
|
print {$system_v_init_fl} $system_v_init_script;
|
||||||
@ -167,7 +167,7 @@ Release: 1%{?dist}
|
|||||||
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/FastVPSEestiOu/fastnetmon
|
URL: https://fastnetmon.com
|
||||||
|
|
||||||
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
||||||
Source0: http://178.62.227.110/fastnetmon_binary_repository/test_binary_builds/this_fake_path_do_not_check_it/archive.tar.gz
|
Source0: http://178.62.227.110/fastnetmon_binary_repository/test_binary_builds/this_fake_path_do_not_check_it/archive.tar.gz
|
||||||
@ -282,7 +282,7 @@ Release: 1%{?dist}
|
|||||||
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
Summary: A high performance DoS/DDoS load analyzer built on top of multiple packet capture engines (NetFlow, IPFIX, sFLOW, netmap, PF_RING, PCAP).
|
||||||
Group: System Environment/Daemons
|
Group: System Environment/Daemons
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: https://github.com/FastVPSEestiOu/fastnetmon
|
URL: https://fastnetmon.com
|
||||||
|
|
||||||
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
# Top level fodler inside archive should be named as "fastnetmon-1.1.1"
|
||||||
Source0: http://178.62.227.110/fastnetmon_binary_repository/test_binary_builds/this_fake_path_do_not_check_it/archive.tar.gz
|
Source0: http://178.62.227.110/fastnetmon_binary_repository/test_binary_builds/this_fake_path_do_not_check_it/archive.tar.gz
|
||||||
@ -525,7 +525,7 @@ DOC
|
|||||||
|
|
||||||
# Create folder for config
|
# Create folder for config
|
||||||
mkdir("$folder_for_build/etc");
|
mkdir("$folder_for_build/etc");
|
||||||
print `wget --no-check-certificate https://raw.githubusercontent.com/FastVPSEestiOu/fastnetmon/master/src/fastnetmon.conf -O$folder_for_build/etc/fastnetmon.conf`;
|
print `wget --no-check-certificate https://raw.githubusercontent.com/pavel-odintsov/fastnetmon/master/src/fastnetmon.conf -O$folder_for_build/etc/fastnetmon.conf`;
|
||||||
|
|
||||||
`cp $archive_name $folder_for_build/archive.tar.gz`;
|
`cp $archive_name $folder_for_build/archive.tar.gz`;
|
||||||
|
|
||||||
|
@ -7,7 +7,7 @@ local json = require("json")
|
|||||||
local ffi = require("ffi")
|
local ffi = require("ffi")
|
||||||
|
|
||||||
-- Load declaration from the inside separate header file
|
-- Load declaration from the inside separate header file
|
||||||
-- This code should be in sync with https://github.com/FastVPSEestiOu/fastnetmon/blob/master/src/sflow_plugin/sflow_data.h
|
-- This code should be in sync with https://github.com/pavel-odintsov/fastnetmon/blob/master/src/sflow_plugin/sflow_data.h
|
||||||
-- We have changed all defines to actual values
|
-- We have changed all defines to actual values
|
||||||
ffi.cdef([[
|
ffi.cdef([[
|
||||||
typedef unsigned char u_char;
|
typedef unsigned char u_char;
|
||||||
|
Loading…
Reference in New Issue
Block a user