Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon How do I configure firewall rules for WebSocket ports in Docker


How do I configure firewall rules for WebSocket ports in Docker


To configure firewall rules for WebSocket ports in Docker, follow these steps:

1. Docker Compose Configuration

1. Expose the WebSocket Port:
- In your `docker-compose.yml` file, expose the WebSocket port:
yaml
     services:
         websockets:
             image: beyondcode/laravel-websockets
             ports:
                 - "6001:6001"
     

2. Firewall Configuration

1. UFW Configuration:
- If you are using Ubuntu-based systems, use UFW to configure the firewall:
bash
     sudo ufw allow 6001
     sudo ufw enable
     

2. Firewalld Configuration:
- If you are using RHEL-based systems, use firewalld to configure the firewall:

bash
     sudo firewall-cmd --add-port=6001/tcp --permanent
     sudo firewall-cmd --reload
     

3. iptables Configuration:
- If you are using older systems, use iptables to configure the firewall:

bash
     sudo iptables -A INPUT -p tcp --dport 6001 -j ACCEPT
     sudo service iptables save
     sudo service iptables restart
     

3. Verify Firewall Rules

1. Verify Firewall Rules:
- Verify that the firewall rules are correctly configured:
bash
     sudo ufw status
     sudo firewall-cmd --list-all
     sudo iptables -nL
     

4. Monitor WebSocket Connections

1. Monitor WebSocket Connections:
- Monitor WebSocket connections to ensure they are functioning correctly:
bash
     wscat -c ws://localhost:6001
     

5. Keep Firewall Rules Up-to-Date

1. Keep Firewall Rules Up-to-Date:
- Regularly review and update firewall rules to ensure they remain secure and compliant with best practices.

By following these steps, you can ensure that your WebSocket ports are properly configured and secured within your Docker setup.

Citations:
[1] https://laracasts.com/discuss/channels/laravel/laravel-websocket-failed-to-connect-to-127001-port-6001-on-docker?reply=880224
[2] https://github.com/beyondcode/laravel-websockets/issues/855
[3] https://www.heondokim.com/articles/laravel-websockets-nginx-docker
[4] https://www.reddit.com/r/laravel/comments/nzjhmy/laravel_websockets_apache2_docker/?rdt=60559
[5] https://laravelgeek.com/posts/building-real-time-applications-with-laravel-websockets-a-comprehensive-guide