Puncte:0

Restricționați accesul extern la un Docker Mysql folosind IPTables?

drapel in

Am un docker Mysql care rulează într-un Linode folosind următorul fișier docker:

versiunea: '3'
Servicii:
  mysql8:
    imagine: mysql:8.0.23
    comandă: --default-authentication-plugin=parola_native_mysql
    container_name: mysql8
    cap_add:
      - SYS_NICE
    mediu inconjurator:
      MYSQL_ROOT_PASSWORD: rambo
    volume:
      - /opt/mysql/data:/var/lib/mysql
    porturi:
      - 3306:3306

Mă pot conecta prin: (1) ssh în mașina Linode și apoi folosind: mysql -h 127.0.0.1 (2) conectarea direct de pe laptop la serverul MySQL din serverul Linode: mysql -h 45.79.101.138

Ceea ce am nevoie este să permit accesul intern la portul 3306, adică (1), dar să nu permit (2).

am incercat cu:

iptables -A INTRARE -p tcp --dport 3306 -s 172.0.0.1 -j ACCEPT
iptables -A INPUT -p tcp --dport 3306 -j DROP

Dar încă mă pot conecta de pe laptop și intern.

Dacă am doar o picătură, atunci nu mă pot conecta nici de pe interior, nici de pe laptop.

iptables -A INPUT -p tcp --dport 3306 -j DROP

IPTablele mele arată astfel:

# Generat de iptables-save v1.8.4 pe vineri, 15 octombrie 21:58:42 2021
*filtru
:INPUT ACCEPT [3222:286906]
: FORWARD DROP [0:0]
: ACCEPT IEȘIRE [4089:439672]
:DOCKER - [0:0]
:DOCKER-ISOLATION-STAGE-1 - [0:0]
:DOCKER-ISOLATION-STAGE-2 - [0:0]
:DOCKER-USER - [0:0]
-A INTRARE -s 127.0.0.1/32 -p tcp -m tcp --dport 3306 -j ACCEPT
-A INTRARE -p tcp -m tcp --dport 3306 -j DROP
-UN FORWARD -j DOCKER-UTILIZATOR
-A ÎNAINTE -j DOCKER-ETAPA DE IZOLARE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A ÎNTÂMPRE -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A FORWARD -o br-bbc39200a6b6 -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o br-bbc39200a6b6 -j DOCKER
-A ÎNTÂMPRE -i br-bbc39200a6b6 ! -o br-bbc39200a6b6 -j ACCEPT
-A FORWARD -i br-bbc39200a6b6 -o br-bbc39200a6b6 -j ACCEPT
-A FORWARD -o br-595c99b571cb -m conntrack --ctstate RELATED,STABLISHED -j ACCEPT
-A FORWARD -o br-595c99b571cb -j DOCKER
-A ÎNTÂMPRE -i br-595c99b571cb ! -o br-595c99b571cb -j ACCEPT
-A FORWARD -i br-595c99b571cb -o br-595c99b571cb -j ACCEPT
-A DOCKER -d 172.19.0.2/32 ! -i br-595c99b571cb -o br-595c99b571cb -p tcp -m tcp --dport 3306 -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -i br-bbc39200a6b6 ! -o br-bbc39200a6b6 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -i br-595c99b571cb ! -o br-595c99b571cb -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-IZOLARE-ETAPA-1 -j RETURNARE
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -o br-bbc39200a6b6 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -o br-595c99b571cb -j DROP
-A DOCKER-IZOLARE-ETAPA-2 -j RETURNARE
-UN DOCKER-USER -j RETURN
COMMIT
# Finalizat vineri, 15 octombrie 21:58:42 2021
# Generat de iptables-save v1.8.4 pe vineri, 15 octombrie 21:58:42 2021
*nat
:ACCEPTAREA PRE-ROUTARE [1297:65663]
:INPUT ACCEPT [1297:65663]
: ACCEPT IEȘIRE [12:720]
: POSTROUTING ACCEPT [16:940]
:DOCKER - [0:0]
-A PREROUTING -m addrtype --dst-type LOCAL -j DOCKER
-O IEȘIRE! -d 127.0.0.0/8 -m addrtype --dst-type LOCAL -j DOCKER
-A POSTOUTING -s 172.17.0.0/16 ! -o docker0 -j MASQUERADE
-A POSTROUTING -s 172.18.0.0/16 ! -o br-bbc39200a6b6 -j MASQUERADE
-A POSTOUTING -s 172.19.0.0/16 ! -o br-595c99b571cb -j MASQUERADE
-A POSTROUTING -s 172.19.0.2/32 -d 172.19.0.2/32 -p tcp -m tcp --dport 3306 -j MASQUERADE
-A DOCKER -i docker0 -j RETURN
-A DOCKER -i br-bbc39200a6b6 -j RETURN
-A DOCKER -i br-595c99b571cb -j RETURN
-UN DOCKER! -i br-595c99b571cb -p tcp -m tcp --dport 3306 -j DNAT --la-destinație 172.19.0.2:3306
COMMIT
# Finalizat vineri, 15 octombrie 21:58:42 2021

Orice idee este apreciata.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.