FROM kalilinux/kali-rolling ENV DEBIAN_FRONTEND=noninteractive ENV PYTHONUNBUFFERED=1 ENV API_TOKEN=shell RUN apt-get update && apt-get install -y \ python3 python3-pip \ python3-fastapi python3-uvicorn python3-multipart python3-websockets \ curl wget git sudo vim \ openssh-server \ && apt-get clean && rm -rf /var/lib/apt/lists/* # Configure SSH RUN mkdir -p /var/run/sshd && \ echo 'PermitRootLogin yes' >> /etc/ssh/sshd_config && \ echo 'PasswordAuthentication yes' >> /etc/ssh/sshd_config && \ echo 'Port 2222' >> /etc/ssh/sshd_config && \ echo 'ListenAddress 0.0.0.0' >> /etc/ssh/sshd_config # Create kali user RUN useradd -m -u 1000 -s /bin/bash kali && \ echo "kali:kali" | chpasswd && \ usermod -aG sudo kali && \ echo "kali ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers.d/kali WORKDIR /app COPY server.py . COPY static/index.html ./static/index.html COPY static/assets/app.js ./static/assets/app.js COPY static/assets/index.css ./static/assets/index.css RUN chown -R kali:kali /app # Expose web UI and SSH EXPOSE 7860 EXPOSE 2222 USER kali CMD ["python3", "server.py"]