Разлика между версии на „Инсталиране на Dionaea и DionaeaFR“
от БАРЗИКТ Wiki
Ред 139: | Ред 139: | ||
sudo python manage.py collectstatic | sudo python manage.py collectstatic | ||
sudo python manage.py runserver 0.0.0.0:8000 | sudo python manage.py runserver 0.0.0.0:8000 | ||
+ | </pre> | ||
+ | |||
+ | ==(опционално) Редактиране на файл /opt/DionaeaFR/DionaeaFR/Templates/table.html== | ||
+ | Поради бъг се налага редактиране на файла table.html: | ||
+ | <pre style="white-space: pre-wrap; white-space: -moz-pre-wrap;white-space: -pre-wrap;white-space: -o-pre-wrap; word-wrap: break-word"> | ||
+ | {% spaceless %} | ||
+ | {% load django_tables2 %} | ||
+ | {% load i18n %} | ||
+ | {% block table %} | ||
+ | <table {% if table.attrs %} {{ table.attrs.as_html }}{% endif %}> | ||
+ | {% block table.thead %} | ||
+ | <thead> | ||
+ | <tr> | ||
+ | {% for column in table.columns %} | ||
+ | {% if column.orderable %} | ||
+ | <th {{ column.attrs.th.as_html }}><a | ||
+ | href="{% querystring table.prefixed_order_by_field=column.order_by_alias.next %}">{{ column.header }}</a> | ||
+ | </th> | ||
+ | {% else %} | ||
+ | <th {{ column.attrs.th.as_html }}>{{ column.header }}</th> | ||
+ | {% endif %} | ||
+ | {% endfor %} | ||
+ | </tr> | ||
+ | </thead> | ||
+ | {% endblock table.thead %} | ||
+ | {% block table.tbody %} | ||
+ | <tbody> | ||
+ | {% for row in table.page.object_list|default:table.rows %} | ||
+ | {% block table.tbody.row %} | ||
+ | <tr class="{% cycle "odd" "even" %}"> | ||
+ | {% for column, cell in row.items %} | ||
+ | <td {{ column.attrs.td.as_html }}>{{ cell }}</td> | ||
+ | {% endfor %} | ||
+ | </tr> | ||
+ | {% endblock table.tbody.row %} | ||
+ | {% empty %} | ||
+ | {% if table.empty_text %} | ||
+ | {% block table.tbody.empty_text %} | ||
+ | <tr> | ||
+ | <td colspan="{{ table.columns|length }}">{{ table.empty_text }}</td> | ||
+ | </tr> | ||
+ | {% endblock table.tbody.empty_text %} | ||
+ | {% endif %} | ||
+ | {% endfor %} | ||
+ | </tbody> | ||
+ | {% endblock table.tbody %} | ||
+ | {% block table.tfoot %} | ||
+ | <tfoot></tfoot> | ||
+ | {% endblock table.tfoot %} | ||
+ | </table> | ||
+ | {% endblock table %} | ||
+ | |||
+ | {% if table.page %} | ||
+ | {% with table.page.paginator.count as total %} | ||
+ | {% with table.page.object_list|length as count %} | ||
+ | {% block pagination %} | ||
+ | <div class="pagination pagination-centered"> | ||
+ | <ul> | ||
+ | {% if table.page.has_previous %} | ||
+ | {% block pagination.previous %} | ||
+ | <li class="previous"> | ||
+ | <a href="{% querystring table.prefixed_page_field=table.page.previous_page_number %}">{% trans "Previous" %}</a> | ||
+ | </li>{% endblock pagination.previous %} | ||
+ | {% else %} | ||
+ | <li class="previous disabled"><a href="">Previous</a></li> | ||
+ | {% endif %} | ||
+ | |||
+ | {% if table.page.has_next %} | ||
+ | {% block pagination.next %} | ||
+ | <li class="next"> | ||
+ | <a href="{% querystring table.prefixed_page_field=table.page.next_page_number %}">{% trans "Next" %}</a> | ||
+ | </li>{% endblock pagination.next %} | ||
+ | {% else %} | ||
+ | <li class="next disabled"><a href="">Previous</a></li> | ||
+ | {% endif %} | ||
+ | </ul> | ||
+ | </div> | ||
+ | {% endblock pagination %} | ||
+ | {% endwith %} | ||
+ | {% endwith %} | ||
+ | {% endif %} | ||
+ | {% endspaceless %} | ||
</pre> | </pre> |
Версия от 18:20, 19 май 2016
Процедурата е описана за Ubuntu Server 16.04
Съдържание
- 1 Инсталиране на Dionaea
- 2 Инсталиране на DionaeaFR
- 2.1 Инсталиране на библиотеки и инструменти
- 2.2 Инсталиране на DionaeaFR
- 2.3 Редактиране на файл manage.php
- 2.4 Редактира се кинфигурационния файл /opt/DionaeaFR/DionaeaFR/settings.py
- 2.5 Стартиране на сървъра на DionaeaFR
- 2.6 (опционално) Редактиране на файл /opt/DionaeaFR/DionaeaFR/Templates/table.html
Инсталиране на Dionaea
Обновяване на Ubuntu
sudo apt-get update sudo apt-get upgrade
Инсталиране на библиотеки и инструменти
sudo apt-get install libudns-dev libglib2.0-dev libssl-dev libcurl4-openssl-dev libreadline-dev libsqlite3-dev python-dev libtool automake autoconf build-essential subversion git-core flex bison pkg-config libnl-3-dev libnl-genl-3-dev libnl-nf-3-dev libnl-route-3-dev sqlite3 cvs python-pip python3 python3-dev python3-yaml check cython3 libemu-dev libev-dev libloudmouth1-dev libnetfilter-queue-dev libpcap-dev
Изтегляне на Dionaea
cd /opt/ sudo git clone https://github.com/DinoTools/dionaea.git
Компилиране на Dionaea
cd /opt/dionaea sudo autoreconf -vi sudo ./configure --prefix=/opt/dionaea --with-python=/usr/bin/python3 --with-cython-dir=/usr/bin --with-ev-include=/opt/dionaea/include --with-ev-lib=/opt/dionaea/lib --with-emu-lib=/opt/dionaea/lib/ --with-emu-include=/opt/dionaea/include/ --with-nl-include=/opt/dionaea/include --with-nl-lib=/opt/dionaea/lib/ sudo make sudo make install
Копиране на конфигурационния файл
sudo cp /opt/dionaea/etc/dionaea/dionaea.cfg /opt/dionaea/etc/dionaea/dionaea.conf
Стартиране на Dionaea
cd /opt/dionaea/bin sudo ./dionaea
Инсталиране на DionaeaFR
Инсталиране на библиотеки и инструменти
sudo apt-get install python-pip python-netaddr python-dev git unzip
Инсталиране на DionaeaFR
sudo pip install Django==1.8 sudo pip install pygeoip sudo pip install django-pagination sudo pip install django-filter==0.11.0 sudo pip install django-tables2 sudo pip install django-compressor sudo pip install django-htmlmin sudo pip install django-appconf sudo pip install htmlmin sudo pip install netaddr cd /opt/ sudo wget https://github.com/benjiec/django-tables2-simplefilter/archive/master.zip -O django-tables2-simplefilter.zip sudo unzip django-tables2-simplefilter.zip sudo mv django-tables2-simplefilter-master/ django-tables2-simplefilter/ cd django-tables2-simplefilter/ sudo python setup.py install cd /opt/ sudo git clone https://github.com/bro/pysubnettree.git cd pysubnettree/ sudo python setup.py install cd /opt/ sudo wget http://nodejs.org/dist/v0.12.0/node-v0.12.0.tar.gz sudo tar xzvf node-v0.12.0.tar.gz cd node-v0.12.0 sudo ./configure sudo make sudo make install sudo npm install -g less sudo npm install -g promise cd /opt/ sudo wget https://github.com/RootingPuntoEs/DionaeaFR/archive/master.zip -O DionaeaFR.zip sudo unzip DionaeaFR.zip sudo mv DionaeaFR-master/ DionaeaFR cd /opt/ sudo wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz sudo wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz sudo gunzip GeoLiteCity.dat.gz sudo gunzip GeoIP.dat.gz sudo mv GeoIP.dat DionaeaFR/DionaeaFR/static sudo mv GeoLiteCity.dat DionaeaFR/DionaeaFR/static sudo cp /opt/DionaeaFR/DionaeaFR/settings.py.dist /opt/DionaeaFR/DionaeaFR/settings.py sudo mkdir /var/run/dionaeafr
Редактиране на файл manage.php
Изтриват се редовете след from.django.import до execute_from_command_line. Файлът трябва да има следния вид:
#!/usr/bin/env python import os import sys if __name__ == "__main__": os.environ.setdefault("DJANGO_SETTINGS_MODULE", "DionaeaFR.settings") from django.core.management import execute_from_command_line execute_from_command_line(sys.argv)
Редактира се кинфигурационния файл /opt/DionaeaFR/DionaeaFR/settings.py
Променя пътя към базата данни на Dionea:
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': '/tmp/dionaea.sqlite', 'USER': '', # Not used with sqlite3. 'PASSWORD': '', # Not used with sqlite3. 'HOST': '', # Set to empty string for localhost. Not used with sqlite3. 'PORT': '', # Set to empty string for default. Not used with sqlite3. }, 'OPTIONS': { 'timeout': 60, } }
Стартиране на сървъра на DionaeaFR
cd /opt/DionaeaFR/ sudo python manage.py collectstatic sudo python manage.py runserver 0.0.0.0:8000
(опционално) Редактиране на файл /opt/DionaeaFR/DionaeaFR/Templates/table.html
Поради бъг се налага редактиране на файла table.html:
{% spaceless %} {% load django_tables2 %} {% load i18n %} {% block table %} <table {% if table.attrs %} {{ table.attrs.as_html }}{% endif %}> {% block table.thead %} <thead> <tr> {% for column in table.columns %} {% if column.orderable %} <th {{ column.attrs.th.as_html }}><a href="{% querystring table.prefixed_order_by_field=column.order_by_alias.next %}">{{ column.header }}</a> </th> {% else %} <th {{ column.attrs.th.as_html }}>{{ column.header }}</th> {% endif %} {% endfor %} </tr> </thead> {% endblock table.thead %} {% block table.tbody %} <tbody> {% for row in table.page.object_list|default:table.rows %} {% block table.tbody.row %} <tr class="{% cycle "odd" "even" %}"> {% for column, cell in row.items %} <td {{ column.attrs.td.as_html }}>{{ cell }}</td> {% endfor %} </tr> {% endblock table.tbody.row %} {% empty %} {% if table.empty_text %} {% block table.tbody.empty_text %} <tr> <td colspan="{{ table.columns|length }}">{{ table.empty_text }}</td> </tr> {% endblock table.tbody.empty_text %} {% endif %} {% endfor %} </tbody> {% endblock table.tbody %} {% block table.tfoot %} <tfoot></tfoot> {% endblock table.tfoot %} </table> {% endblock table %} {% if table.page %} {% with table.page.paginator.count as total %} {% with table.page.object_list|length as count %} {% block pagination %} <div class="pagination pagination-centered"> <ul> {% if table.page.has_previous %} {% block pagination.previous %} <li class="previous"> <a href="{% querystring table.prefixed_page_field=table.page.previous_page_number %}">{% trans "Previous" %}</a> </li>{% endblock pagination.previous %} {% else %} <li class="previous disabled"><a href="">Previous</a></li> {% endif %} {% if table.page.has_next %} {% block pagination.next %} <li class="next"> <a href="{% querystring table.prefixed_page_field=table.page.next_page_number %}">{% trans "Next" %}</a> </li>{% endblock pagination.next %} {% else %} <li class="next disabled"><a href="">Previous</a></li> {% endif %} </ul> </div> {% endblock pagination %} {% endwith %} {% endwith %} {% endif %} {% endspaceless %}