Amacım, docker kapsayıcılarına erişimi sadece birkaç genel IP adresine sınırlamak. Hedefime ulaşmak için basit, tekrarlanabilir bir süreç var mı? Docker'ın varsayılan seçeneklerini kullanırken sadece iptables temellerini anlayarak çok zor buluyorum.
Bir kapsayıcı çalıştırmak, genel İnternet tarafından görünür hale getirmek istiyorum, ancak yalnızca belirli ana bilgisayarlardan bağlantılara izin vermek istiyorum. Varsayılan bir INPUT ilkesini reddetme kuralını ayarlamak ve sonra yalnızca benim ana bilgisayar bağlantılarına izin bekliyoruz. Ancak Docker'ın NAT kuralları ve zincirleri engel olur ve INPUT kurallarım göz ardı edilir.
Birisi aşağıdaki varsayımlar göz önüne alındığında hedefime nasıl ulaşılacağına dair bir örnek verebilir mi?
- Eth0 hakkında halka açık IP 80.80.80.80
- Eth1 üzerinde özel IP 192.168.1.10
docker run -d -p 3306:3306 mysql- Ana bilgisayar 4.4.4.4 ve 8.8.8.8 dışındaki ana bilgisayar / kap 3306 ile tüm bağlantıyı engelle
Kapsayıcıyı yalnızca yerel ip adresine bağlamaktan mutluyum, ancak iptables yönlendirme kurallarının düzgün bir şekilde docker işleminden ve ana bilgisayar yeniden başlatıldığından nasıl kurulacağı konusunda talimatlara ihtiyacım var.
Teşekkürler!
--ctdirmi? Ben kullanım-m conntrack --ctstate NEW --ctorigdstport 3306 --ctdir ORIGINAL