Files
attack-defense-platform/services/poke/Dockerfile
T
2025-10-10 22:18:06 +07:00

38 lines
1.1 KiB
Docker

FROM public.ecr.aws/docker/library/php:8.0-apache
ARG PASSWORD
# Create ctfuser and set password
RUN useradd -m -d /var/www/html ctfuser && echo ctfuser:${PASSWORD} | chpasswd
# Install necessary packages
RUN apt-get update && apt-get install -y openssh-server curl
# Configure SSH for ctfuser
RUN echo "PasswordAuthentication yes" >> /etc/ssh/sshd_config && \
echo "PermitRootLogin no" >> /etc/ssh/sshd_config && \
echo "AllowUsers ctfuser" >> /etc/ssh/sshd_config
# Generate SSH host keys
RUN ssh-keygen -A
# Ensure /run/sshd directory exists with correct permissions
RUN mkdir -p /run/sshd && chmod 755 /run/sshd
# Copy source code and set permissions
COPY src/ /var/www/html
RUN mkdir /var/www/html/backups && \
chown -R ctfuser:ctfuser /var/www/html && \
chmod -R 777 /var/www/html
# Allow URL inclusion in PHP
RUN echo "allow_url_include = On" >> /usr/local/etc/php/php.ini
# Copy start script and set execute permissions
COPY start.sh .
RUN chmod +x start.sh
# Start SSH service as root and then switch to ctfuser
CMD service ssh start && ./start.sh