| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  | FROM ubuntu:24.04 | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | ENV DEBIAN_FRONTEND noninteractive | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Include dist | 
					
						
							| 
									
										
										
										
											2022-03-08 23:36:03 +00:00
										 |  |  | COPY dist/ /root/dist/ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2022-01-24 01:31:31 +00:00
										 |  |  | # Determine arch, get and install packages | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  | RUN ARCH=$(arch) && \ | 
					
						
							| 
									
										
										
										
											2022-01-24 01:31:31 +00:00
										 |  |  |       if [ "$ARCH" = "x86_64" ]; then ARCH="amd64"; fi && \ | 
					
						
							|  |  |  |       if [ "$ARCH" = "aarch64" ]; then ARCH="arm64"; fi && \ | 
					
						
							|  |  |  |     echo "$ARCH" && \ | 
					
						
							|  |  |  |     cd /root/dist/ && \ | 
					
						
							| 
									
										
										
										
											2024-09-07 00:35:04 +00:00
										 |  |  | # Setup apt | 
					
						
							| 
									
										
										
										
											2022-01-24 01:31:31 +00:00
										 |  |  |     apt-get update -y && \ | 
					
						
							| 
									
										
										
										
											2024-12-05 20:12:18 +00:00
										 |  |  |     apt-get upgrade -y && \ | 
					
						
							| 
									
										
										
										
											2021-10-05 15:26:02 +00:00
										 |  |  |     apt-get install wget -y && \ | 
					
						
							| 
									
										
										
										
											2022-01-24 01:31:31 +00:00
										 |  |  |     wget http://ftp.us.debian.org/debian/pool/main/libe/libemu/libemu2_0.2.0+git20120122-1.2+b1_$ARCH.deb \ | 
					
						
							|  |  |  |          http://ftp.us.debian.org/debian/pool/main/libe/libemu/libemu-dev_0.2.0+git20120122-1.2+b1_$ARCH.deb && \ | 
					
						
							| 
									
										
										
										
											2024-12-05 20:12:18 +00:00
										 |  |  |     apt-get install ./libemu2_0.2.0+git20120122-1.2+b1_$ARCH.deb \ | 
					
						
							| 
									
										
										
										
											2022-01-24 01:31:31 +00:00
										 |  |  |                 ./libemu-dev_0.2.0+git20120122-1.2+b1_$ARCH.deb -y && \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     apt-get install -y --no-install-recommends \ | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  | 		build-essential \ | 
					
						
							|  |  |  | 		ca-certificates \ | 
					
						
							|  |  |  | 		check \ | 
					
						
							|  |  |  | 		cmake \ | 
					
						
							|  |  |  | 		cython3 \ | 
					
						
							|  |  |  | 		git \ | 
					
						
							|  |  |  | 		libcap2-bin \ | 
					
						
							|  |  |  | 		libcurl4-openssl-dev \ | 
					
						
							|  |  |  | 		libev-dev \ | 
					
						
							|  |  |  | 		libglib2.0-dev \ | 
					
						
							|  |  |  | 		libloudmouth1-dev \ | 
					
						
							|  |  |  | 		libnetfilter-queue-dev \ | 
					
						
							|  |  |  | 		libnl-3-dev \ | 
					
						
							|  |  |  | 		libpcap-dev \ | 
					
						
							|  |  |  | 		libssl-dev \ | 
					
						
							|  |  |  | 		libtool \ | 
					
						
							|  |  |  | 		libudns-dev \ | 
					
						
							|  |  |  | 		procps \ | 
					
						
							|  |  |  | 		python3 \ | 
					
						
							|  |  |  | 		python3-dev \ | 
					
						
							|  |  |  | 		python3-boto3 \ | 
					
						
							|  |  |  | 		python3-bson \ | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  | 		python3-setuptools \ | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  | 		python3-yaml \ | 
					
						
							|  |  |  | 		fonts-liberation && \ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Get and install dionaea | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  |     git clone https://github.com/t3chn0m4g3/dionaea -b 0.11.1 /root/dionaea/ && \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     cd /root/dionaea && \ | 
					
						
							| 
									
										
										
										
											2018-07-31 13:31:50 +00:00
										 |  |  |     mkdir build && \ | 
					
						
							|  |  |  |     cd build && \ | 
					
						
							|  |  |  |     cmake -DCMAKE_INSTALL_PREFIX:PATH=/opt/dionaea .. && \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     make && \ | 
					
						
							|  |  |  |     make install && \ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Setup user and groups | 
					
						
							|  |  |  |     addgroup --gid 2000 dionaea && \ | 
					
						
							|  |  |  |     adduser --system --no-create-home --shell /bin/bash --uid 2000 --disabled-password --disabled-login --gid 2000 dionaea && \ | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  |     setcap cap_net_bind_service=+ep /opt/dionaea/sbin/dionaea && \ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Supply configs and set permissions | 
					
						
							|  |  |  |     chown -R dionaea:dionaea /opt/dionaea/var && \ | 
					
						
							|  |  |  |     rm -rf /opt/dionaea/etc/dionaea/* && \ | 
					
						
							|  |  |  |     mv /root/dist/etc/* /opt/dionaea/etc/dionaea/ && \ | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  |     cp /root/dist/cpu_check.py / && \ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Setup runtime and clean up | 
					
						
							|  |  |  |     apt-get purge -y \ | 
					
						
							|  |  |  |       build-essential \ | 
					
						
							|  |  |  |       ca-certificates \ | 
					
						
							|  |  |  |       check \ | 
					
						
							| 
									
										
										
										
											2018-07-31 13:31:50 +00:00
										 |  |  |       cmake \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       cython3 \ | 
					
						
							|  |  |  |       git \ | 
					
						
							|  |  |  |       libcurl4-openssl-dev \ | 
					
						
							|  |  |  |       libemu-dev \ | 
					
						
							|  |  |  |       libev-dev \ | 
					
						
							|  |  |  |       libglib2.0-dev \ | 
					
						
							|  |  |  |       libloudmouth1-dev \ | 
					
						
							|  |  |  |       libnetfilter-queue-dev \ | 
					
						
							|  |  |  |       libnl-3-dev \ | 
					
						
							|  |  |  |       libpcap-dev \ | 
					
						
							|  |  |  |       libssl-dev \ | 
					
						
							|  |  |  |       libtool \ | 
					
						
							|  |  |  |       libudns-dev \ | 
					
						
							|  |  |  |       python3 \ | 
					
						
							|  |  |  |       python3-dev \    | 
					
						
							| 
									
										
										
										
											2020-06-25 16:14:37 +00:00
										 |  |  |       python3-boto3 \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       python3-bson \ | 
					
						
							| 
									
										
										
										
											2021-10-05 15:26:02 +00:00
										 |  |  |       python3-yaml \  | 
					
						
							|  |  |  |       wget && \  | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     apt-get install -y \ | 
					
						
							|  |  |  |       ca-certificates \ | 
					
						
							|  |  |  |       python3 \ | 
					
						
							| 
									
										
										
										
											2020-06-25 16:14:37 +00:00
										 |  |  |       python3-boto3 \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       python3-bson \ | 
					
						
							| 
									
										
										
										
											2024-02-28 20:05:03 +00:00
										 |  |  |       python3-psutil \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       python3-yaml \ | 
					
						
							| 
									
										
										
										
											2020-06-25 16:14:37 +00:00
										 |  |  |       libcurl4 \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       libemu2 \ | 
					
						
							|  |  |  |       libev4 \ | 
					
						
							|  |  |  |       libglib2.0-0 \ | 
					
						
							|  |  |  |       libnetfilter-queue1 \ | 
					
						
							|  |  |  |       libnl-3-200 \ | 
					
						
							|  |  |  |       libpcap0.8 \ | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  |       libpython3.12 \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |       libudns0 && \ | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     apt-get autoremove --purge -y && \ | 
					
						
							|  |  |  |     apt-get clean && \ | 
					
						
							| 
									
										
										
										
											2024-09-11 10:42:17 +00:00
										 |  |  |     rm -rf /root/* \ | 
					
						
							|  |  |  |            /var/lib/apt/lists/* \ | 
					
						
							|  |  |  |            /tmp/* \ | 
					
						
							|  |  |  |            /var/tmp/* \ | 
					
						
							|  |  |  |            /root/.cache \ | 
					
						
							|  |  |  |            /opt/dionaea/.git | 
					
						
							| 
									
										
										
										
											2020-01-02 17:37:08 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Start dionaea | 
					
						
							| 
									
										
										
										
											2022-03-11 18:02:20 +00:00
										 |  |  | STOPSIGNAL SIGINT | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  | # | 
					
						
							|  |  |  | # Dionaea sometimes hangs at 100% CPU usage, if detected container will become unhealthy and restarted by tpotinit | 
					
						
							|  |  |  | HEALTHCHECK --interval=5m --timeout=30s --retries=3 CMD python3 /cpu_check.py $(pgrep -of dionaea) 99 | 
					
						
							| 
									
										
										
										
											2018-03-31 15:18:28 +00:00
										 |  |  | USER dionaea:dionaea | 
					
						
							| 
									
										
										
										
											2024-11-26 10:49:31 +00:00
										 |  |  | CMD ["/opt/dionaea/sbin/dionaea", "-u", "dionaea", "-g", "dionaea", "-c", "/opt/dionaea/etc/dionaea/dionaea.cfg"] |