랩베리 피에 꿀단지를 넣어보도록 하겠습니다.
21433 단어 Raspberry Pidionaeahoneypottech
개시하다
어떤 방문이 있을지 Raspberry Pi에 Dionaea를 넣고 싶어요
해봤어.
(이미 투고했지만 정보는 1년여 전의 것)
(Qiita에서도 같은 기사가 나왔고 백업을 겸해서 가져왔습니다)
프로그램
OS 관계
Raspberry Pi에 OS 추가
먼저 포맷
$ sudo apt-get update
$ sudo apt-get dist-upgrade
사용자 관련 설정 수정
pi 사용자가 유효하면 무서워서 다른 사용자를 만든 후에 비활성화됩니다.
$ sudo useradd -m -s /bin/bash honey
$ sudo visudo
@@ -20,8 +20,7 @@
root ALL=(ALL:ALL) ALL
# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL
+honey ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
$ sudo vi /etc/sudoers.d/010_pi-nopasswd
@@ -1 +1 @@
-pi ALL=(ALL) NOPASSWD: ALL
+#pi ALL=(ALL) NOPASSWD: ALL
$ sudo usermod -L pi
ssh 로그인을 키 인증으로 제한
잠시 키 인증에만 로그인합니다.
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/honey/.ssh/id_rsa):
Created directory '/home/honey/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/honey/.ssh/id_rsa.
Your public key has been saved in /home/honey/.ssh/id_rsa.pub.
The key fingerprint is:
===(masked)===============================================
The key's randomart image is:
+---[RSA 2048]----+
| (masked) |
| |
| |
| |
| |
| |
| |
| |
| |
+----[SHA256]-----+
$ sudo vi /etc/ssh/sshd_config
@@ -29,15 +29,15 @@
# Authentication:
#LoginGraceTime 2m
-#PermitRootLogin prohibit-password
+PermitRootLogin no
#StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
-#PubkeyAuthentication yes
+PubkeyAuthentication yes
# Expect .ssh/authorized_keys2 to be disregarded by default in future.
-#AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
+AuthorizedKeysFile .ssh/authorized_keys .ssh/authorized_keys2
#AuthorizedPrincipalsFile none
$ sudo service ssh restart
키 인증을 통해 로그인할 수 있는지 확인
암호 로그인 해제
$ sudo vi /etc/ssh/sshd_config
@@ -53,8 +53,8 @@
#IgnoreRhosts yes
# To disable tunneled clear text passwords, change to no here!
-#PasswordAuthentication yes
-#PermitEmptyPasswords no
+PasswordAuthentication no
+PermitEmptyPasswords no
# Change to yes to enable challenge-response passwords (beware issues with
# some PAM modules and threads)
$ sudo service ssh restart
Dionaea 설치
Ubuntu라면 appt-get install 가능한데 Raspbian이 갈지 안 갈지 몰라서
컴파일해서 넣기로 했어요.
소스 파일 다운로드, 컴파일 및 설치
$ cd
$ git clone https://github.com/DinoTools/dionaea.git
$ cd dionaea
$ sudo apt-get install \
build-essential \
check \
cmake3 \
cython3 \
libcurl4-openssl-dev \
libemu-dev \
libev-dev \
libglib2.0-dev \
libloudmouth1-dev \
libnetfilter-queue-dev \
libnl-dev \
libpcap-dev \
libssl-dev \
libtool \
libudns-dev \
python3 \
python3-dev \
python3-bson \
python3-yaml
여기는 cmake3이 없다고 해서 cmake로 다시 도전합니다.$ sudo apt-get install cmake
$ cmake -version
cmake version 3.7.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
버전이 3개 이상 있어서 괜찮을 수도 있으니 다른 것도 도전해보세요.$ sudo apt-get install \
build-essential \
check \
cython3 \
libcurl4-openssl-dev \
libemu-dev \
libev-dev \
libglib2.0-dev \
libloudmouth1-dev \
libnetfilter-queue-dev \
libnl-dev \
libpcap-dev \
libssl-dev \
libtool \
libudns-dev \
python3 \
python3-dev \
python3-bson \
python3-yaml
컴파일 설치.$ mkdir build
$ cd build
$ cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/dionaea ..
$ make
$ sudo make install
프로파일
공식 홈페이지에서 직접 사용할 수 있는 설정 파일이 있어 유용했다.
dionaea.cfg
[dionaea]
download.dir=@LOCALESTATEDIR@/dionaea/binaries/
modules=curl,python,nfq,emu,pcap
processors=filter_streamdumper,filter_emu
listen.mode=getifaddrs
# listen.addresses=127.0.0.1
# listen.interfaces=eth0,tap0
# Country
# ssl.default.c=GB
# Common Name/domain name
# ssl.default.cn=
# Organization
# ssl.default.o=
# Organizational Unit
# ssl.default.ou=
[logging]
default.filename=@LOCALESTATEDIR@/dionaea/dionaea.log
default.levels=all
default.domains=*
errors.filename=@LOCALESTATEDIR@/dionaea/dionaea-errors.log
errors.levels=warning,error
errors.domains=*
[processor.filter_emu]
name=filter
config.allow.0.protocols=smbd,epmapper,nfqmirrord,mssqld
next=emu
[processor.filter_streamdumper]
name=filter
config.allow.0.types=accept
config.allow.1.types=connect
config.allow.1.protocols=ftpctrl
config.deny.0.protocols=ftpdata,ftpdatacon,xmppclient
next=streamdumper
[processor.streamdumper]
name=streamdumper
config.path=@LOCALESTATEDIR@/dionaea/bistreams/%Y-%m-%d/
[processor.emu]
name=emu
config.limits.files=3
#512 * 1024
config.limits.filesize=524288
config.limits.sockets=3
config.limits.sustain=120
config.limits.idle=30
config.limits.listen=30
config.limits.cpu=120
#// 1024 * 1024 * 1024
config.limits.steps=1073741824
[module.nfq]
queue=2
[module.nl]
# set to yes in case you are interested in the mac address of the remote (only works for lan)
lookup_ethernet_addr=no
[module.python]
imports=dionaea.log,dionaea.services,dionaea.ihandlers
sys_paths=default
service_configs=@SYSCONFDIR@/dionaea/services-enabled/*.yaml
ihandler_configs=@SYSCONFDIR@/dionaea/ihandlers-enabled/*.yaml
[module.pcap]
any.interface=any
사용자 작성 및 소유자 변경
사용자를 만들었습니다. 지금까지 루트의 소지품인 다이애나 세트입니다.
소유자를 변경합니다.
$ sudo useradd -m dionaea
$ cd /opt
$ sudo chown -R dioanaea
여기까지 하면 디오니아가 움직일 거야.DionaeaFR 설치
시각화 도구가 있으니 넣어보세요.
각 패키지 설치
$ sudo pip install Django
$ sudo pip install pygeoip
$ sudo pip install django-pagination
$ sudo pip install django-tables2
$ sudo pip install django-compressor
$ sudo pip install django-htmlmin
$ sudo pip install django-filter
$ sudo pip install uwsgi
$ cd
$ git clone https://github.com/benjiec/django-tables2-simplefilter
$ cd django-tables2-simplefilter
$ sudo python setup.py install
$ cd
$ git clone git://git.bro-ids.org/pysubnettree.git
$ cd pysubnettree
$ sudo python setup.py install
$ cd
$ wget https://nodejs.org/dist/v8.11.2/node-v8.11.2.tar.gz
$ tar zxvf node-v8.11.2.tar.gz
$ cd node-v8.11.2/
$ ./configure
$ make
$ sudo make install
$ sudo npm install -g less
$ sudo apt-get install python-netaddr
DionaeaFR 설치
$ cd
$ git clone https://github.com/rubenespadas/DionaeaFR.git
$ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCity.dat.gz
$ wget http://geolite.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz
$ gunzip GeoLiteCity.dat.gz
$ gunzip GeoIP.dat.gz
$ mv GeoIP.dat DionaeaFR/DionaeaFR/static
$ mv GeoLiteCity.dat DionaeaFR/DionaeaFR/static
$ sudo mv DionaeaFR /opt/
$ cd /opt
$ sudo chown -R dionaea:dionaea DionaeaFR
이렇게 하면 DionaeaFR도 움직일 거예요.DionaeaFR에 대한 외부 액세스 차단
외부 방문이 상당히 느슨하기 때문에 노드입니다.js에서 수리하는 DionaeaFR
localhost에서만 볼 수 있는 상태로 변경합니다.
$ sudo apt-get install ufw
자, 실행하자...!
$ sudo /opt/dionaea/bin/dionaea -D -u dionaea -c /opt/dionaea/etc/dionaea/dionaea.cfg -w /opt/dionaea -p /opt/dionaea/var/run/dionaea.pid
$ cd ~/DionaeaFR
$ sudo python manage.py collectstatic
$ sudo python manage.py runserver 0.0.0.0:53521
사이트 축소판 그림
Reference
이 문제에 관하여(랩베리 피에 꿀단지를 넣어보도록 하겠습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/h_hnd/articles/20210202-raspi-installhoneypot텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)