| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  | FROM alpine:3.19 | 
					
						
							| 
									
										
										
										
											2019-12-27 16:21:12 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Include dist | 
					
						
							| 
									
										
										
										
											2022-03-05 00:50:47 +00:00
										 |  |  | COPY dist/ /root/dist/ | 
					
						
							| 
									
										
										
										
											2019-12-27 16:21:12 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2024-09-11 10:42:17 +00:00
										 |  |  | # Install packages | 
					
						
							| 
									
										
										
										
											2024-12-05 20:12:18 +00:00
										 |  |  | RUN apk --no-cache -U upgrade && \ | 
					
						
							|  |  |  |     apk --no-cache -U add \ | 
					
						
							|  |  |  |             build-base \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  | 			cython \ | 
					
						
							|  |  |  | 			file \ | 
					
						
							|  |  |  | 			git \ | 
					
						
							|  |  |  | 			libev \ | 
					
						
							|  |  |  | 			libtool \ | 
					
						
							|  |  |  | 			libcap \ | 
					
						
							|  |  |  | 			libffi-dev \ | 
					
						
							|  |  |  | 			libxslt \ | 
					
						
							|  |  |  | 			libxslt-dev \ | 
					
						
							|  |  |  | 			mariadb-dev \ | 
					
						
							|  |  |  | 			pkgconfig \ | 
					
						
							|  |  |  | 			procps \ | 
					
						
							|  |  |  | 			python3 \ | 
					
						
							|  |  |  | 			python3-dev \ | 
					
						
							|  |  |  | 			py3-cffi \ | 
					
						
							|  |  |  | 			py3-cryptography \ | 
					
						
							|  |  |  | 			py3-freezegun \ | 
					
						
							|  |  |  | 			py3-gevent \ | 
					
						
							|  |  |  | 			py3-lxml \ | 
					
						
							|  |  |  | 			py3-natsort \ | 
					
						
							|  |  |  | 			py3-pip \ | 
					
						
							|  |  |  | 			py3-ply \ | 
					
						
							|  |  |  | 			py3-psutil \ | 
					
						
							|  |  |  | 			py3-pycryptodomex \ | 
					
						
							|  |  |  | 			py3-pytest \ | 
					
						
							|  |  |  | 			py3-requests \ | 
					
						
							|  |  |  | 			py3-pyserial \ | 
					
						
							|  |  |  | 			py3-setuptools \ | 
					
						
							|  |  |  | 			py3-slugify \ | 
					
						
							|  |  |  | 			py3-snmp \ | 
					
						
							|  |  |  | 			py3-sphinx \ | 
					
						
							|  |  |  | 			py3-wheel \ | 
					
						
							|  |  |  | 			py3-zope-event \ | 
					
						
							|  |  |  | 			py3-zope-interface \ | 
					
						
							|  |  |  | 			wget && \ | 
					
						
							| 
									
										
										
										
											2019-12-27 16:21:12 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Setup ConPot | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  |     git clone https://github.com/t3chn0m4g3/cpppo /opt/cpppo && \ | 
					
						
							|  |  |  |     cd /opt/cpppo && \ | 
					
						
							| 
									
										
										
										
											2024-12-05 20:12:18 +00:00
										 |  |  |     git checkout 350d5187a941e7359c53087dcb1f0e41ece5682c && \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  |     pip3 install --break-system-packages --no-cache-dir --upgrade pip && \ | 
					
						
							|  |  |  |     pip3 install --break-system-packages --no-cache-dir . && \ | 
					
						
							| 
									
										
										
										
											2020-08-13 16:30:37 +00:00
										 |  |  |     git clone https://github.com/mushorg/conpot /opt/conpot && \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     cd /opt/conpot/ && \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  | 	git checkout 26c67d11b08a855a28e87abd186d959741f46c7f && \ | 
					
						
							| 
									
										
										
										
											2018-08-22 13:43:27 +00:00
										 |  |  |     # Change template default ports if <1024 | 
					
						
							| 
									
										
										
										
											2022-03-12 13:13:31 +00:00
										 |  |  |     sed -i 's/port="2121"/port="21"/' /opt/conpot/conpot/templates/default/ftp/ftp.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="8800"/port="80"/' /opt/conpot/conpot/templates/default/http/http.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="6230"/port="623"/' /opt/conpot/conpot/templates/default/ipmi/ipmi.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="5020"/port="502"/' /opt/conpot/conpot/templates/default/modbus/modbus.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="10201"/port="102"/' /opt/conpot/conpot/templates/default/s7comm/s7comm.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="16100"/port="161"/' /opt/conpot/conpot/templates/default/snmp/snmp.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="6969"/port="69"/' /opt/conpot/conpot/templates/default/tftp/tftp.xml && \ | 
					
						
							|  |  |  |     sed -i 's/port="16100"/port="161"/' /opt/conpot/conpot/templates/IEC104/snmp/snmp.xml && \ | 
					
						
							| 
									
										
										
										
											2022-03-09 15:19:51 +00:00
										 |  |  |     sed -i 's/port="6230"/port="623"/' /opt/conpot/conpot/templates/ipmi/ipmi/ipmi.xml && \ | 
					
						
							| 
									
										
										
										
											2022-03-12 13:13:31 +00:00
										 |  |  |     cp /root/dist/requirements.txt . && \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  |     pip3 install --break-system-packages --no-cache-dir . && \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |     cd / && \ | 
					
						
							|  |  |  |     rm -rf /opt/conpot /tmp/* /var/tmp/* && \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  |     setcap cap_net_bind_service=+ep $(readlink -f $(type -P python3)) && \ | 
					
						
							| 
									
										
										
										
											2022-03-12 13:13:31 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2018-02-27 17:49:58 +00:00
										 |  |  | # Get wireshark manuf db for scapy, setup configs, user, groups | 
					
						
							|  |  |  |     mkdir -p /etc/conpot /var/log/conpot /usr/share/wireshark && \ | 
					
						
							| 
									
										
										
										
											2024-02-14 19:16:13 +00:00
										 |  |  |     wget https://www.wireshark.org/download/automated/data/manuf -o /usr/share/wireshark/manuf && \ | 
					
						
							| 
									
										
										
										
											2018-03-25 18:35:32 +00:00
										 |  |  |     cp /root/dist/conpot.cfg /etc/conpot/conpot.cfg && \ | 
					
						
							| 
									
										
										
										
											2024-02-27 19:11:16 +00:00
										 |  |  |     cp -R /root/dist/templates /usr/lib/$(readlink -f $(type -P python3) | cut -f4 -d"/")/site-packages/conpot/ && \ | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  |     cp /root/dist/cpu_check.py / && \ | 
					
						
							| 
									
										
										
										
											2018-02-27 17:49:58 +00:00
										 |  |  |     addgroup -g 2000 conpot && \ | 
					
						
							| 
									
										
										
										
											2018-05-15 16:24:10 +00:00
										 |  |  |     adduser -S -s /bin/ash -u 2000 -D -g 2000 conpot && \ | 
					
						
							| 
									
										
										
										
											2019-12-27 16:21:12 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  | # Clean up | 
					
						
							| 
									
										
										
										
											2018-05-04 16:29:55 +00:00
										 |  |  |     apk del --purge \ | 
					
						
							|  |  |  |             build-base \ | 
					
						
							| 
									
										
										
										
											2017-10-13 18:58:14 +00:00
										 |  |  |             file \ | 
					
						
							|  |  |  |             git \ | 
					
						
							|  |  |  |             libev \ | 
					
						
							|  |  |  |             libtool \ | 
					
						
							|  |  |  |             libxslt-dev \ | 
					
						
							|  |  |  |             mariadb-dev \ | 
					
						
							|  |  |  |             pkgconfig \ | 
					
						
							| 
									
										
										
										
											2024-11-29 15:47:57 +00:00
										 |  |  |             py3-pip \ | 
					
						
							| 
									
										
										
										
											2018-08-22 13:43:27 +00:00
										 |  |  |             python3-dev \ | 
					
						
							| 
									
										
										
										
											2018-02-27 17:49:58 +00:00
										 |  |  |             wget && \ | 
					
						
							| 
									
										
										
										
											2024-09-11 10:42:17 +00:00
										 |  |  |     rm -rf /root/* \ | 
					
						
							|  |  |  |            /tmp/* \ | 
					
						
							| 
									
										
										
										
											2024-12-05 20:12:18 +00:00
										 |  |  |            /var/cache/apk/* \ | 
					
						
							|  |  |  |            /opt/cpppo/.git \ | 
					
						
							|  |  |  |            /opt/conpot/.git | 
					
						
							| 
									
										
										
										
											2019-12-27 16:21:12 +00:00
										 |  |  | # | 
					
						
							| 
									
										
										
										
											2018-03-25 18:35:32 +00:00
										 |  |  | # Start conpot | 
					
						
							| 
									
										
										
										
											2018-09-11 12:19:26 +00:00
										 |  |  | STOPSIGNAL SIGINT | 
					
						
							| 
									
										
										
										
											2024-02-28 18:07:22 +00:00
										 |  |  | # Conpot 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 conpot) 99 | 
					
						
							| 
									
										
										
										
											2018-04-26 15:18:23 +00:00
										 |  |  | USER conpot:conpot | 
					
						
							| 
									
										
										
										
											2020-08-13 16:30:37 +00:00
										 |  |  | CMD exec /usr/bin/conpot --mibcache $CONPOT_TMP --temp_dir $CONPOT_TMP --template $CONPOT_TEMPLATE --logfile $CONPOT_LOG --config $CONPOT_CONFIG |