Ik heb zojuist de oplossing voor mijn probleem gevonden,
Speciale dank aan @Slava voor het wijzen van de weg, het waren tenslotte iptables.
Dus ik kreeg steeds het bericht "MySQL-verbinding geweigerd" wanneer ik op afstand verbinding probeerde te maken, dus ik zocht naar een manier om de TCP-verbindingslogboeken te zien en ik vond de tcpdump
commando.
Door sudo tcpdump port 3306 -vvv -n
. uit te voeren Ik zag de volgende uitvoer elke keer dat ik op afstand verbinding probeerde te maken:
Ik heb de man-pagina van tcpdump doorzocht en zag dat R betekent voor de vlag TCP RST (RESET).
Even gezocht en vond deze vraag en het geaccepteerde antwoord leidde me weer naar IPTABLES die @Slava suggereerde sinds de eerste opmerking.
Toen keek ik goed en zag dat mijn INPUT ACCEPT tcp:3306 was gedefinieerd na de REJECT TCP-rejectie-met tcp-reset-regel, vandaar dat het logboek werd weergegeven.
Hierna heb ik zojuist de regel om tcp:3306 te accepteren verwijderd en toegevoegd aan de tcp-regels voor weigeren en voila!
iptables -D INPUT -p tcp -m tcp --dport 3306 -j ACCEPT
iptables -I INPUT {line number from the first reject tcp rule} -p tcp -m tcp --dport 3306 -j ACCEPT
IPTABLES ziet er nu zo uit en eindelijk kan ik op afstand verbinding maken met MySQL:
Om de iptables met regelnummers weer te geven, typt u:
sudo iptables -nL --line-numbers
Laatste opdrachten:
- Dit kan worden verbeterd door het bron-IP-adres van waaruit u de externe verbinding maakt op de witte lijst te zetten voor beveiligingskwesties.