Po nastaveni Mariadb skip_networking=1 connection refused

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Honza.Mottl
Člen | 104
+
0
-

Ahoj,

database:
dsn: ‚mysql:host=127.0.0.1;dbname=xxx‘

chtěl jsem zvýšit bezpečnost XAMPPU na Ubuntu, aby se nedalo dostat zvenku na databázi. Nastavil jsem v Mariadb skip_networking=1. T.j. to stejné co dělá xampp security stop networking.

Skončil jsem s hláškou :
Nette\Database\ConnectionException #HY000
SQLSTATE[HY000] [2002] Connection refused

php přistupuje na localhost a tak nerozumím proč to nejde. Nebo se musí host specifikovat jinak?

Díky

Honza

Myiyk
Člen | 321
+
+2
-

skip-networking vyplne úplně připojení přes TCP/IP

musíš se připojit přes socket, ne přes ip adresu

Nebo můžeš nastavit bind-address=127.0.0.1 a databáze nebude komunikovat s vnější sítí.

Editoval Myiyk (17. 12. 2016 0:04)

Honza.Mottl
Člen | 104
+
0
-

Díky za vysvětlení. Se sockety nemám zkušenosti, tak to budu řešit přes bind-address
bind-address jsem našel a nastavil v /opt/lampp/share/mysql/wsrep.cnf
Aplikace funguje. Teď přemýšlím jak ověřit že se zvenku na mysql skutečně nedá dostat.

Mysteria
Člen | 797
+
0
-

Třeba tak, že se zkusíš z jiného webhostingu / serveru na ní připojit? :)

Honza.Mottl
Člen | 104
+
0
-

To ted neuspesne zkousim :(
Ten server mi stoji pod stolem. Delam nacvik na VPS.
Zkousel jsem se pripojit z jineho stroje s Win7. Nainstaloval jsem si Mysql Client for Windows a zkousel se tam dobyt maje bind-address=0.0.0.0 Ale nedostal jsem se tam i kdyz to vlastne fungovat melo:(

Honza.Mottl
Člen | 104
+
+2
-

BINGO! Uz jsem na to prisel :)

Ucim se linux metodou pruzkum bojem.

  1. Pomoci netstat –listen jsem prisel na to jak se jmenuje prislusny socket na XAMPPu
  2. nastavil jsem skip-networking=1
  3. nastavil jsem v config.local.neon

    dsn: ‚mysql:unix_socket=/opt/lampp/var/mysql/mysql.sock;dbname=xxxx‘

Komunikace pres tcp je vypnuta a funguje to :D

Myiyk
Člen | 321
+
0
-

Systém mohl blokovat port s databází, proto se nešlo připojit.
A musíš se pochopitelně připojovat z lokální sítě, nebo mít přesměrované porty a veřejnou IP.

Honza.Mottl
Člen | 104
+
0
-

Bylo to z vývojového prostředí lokální sítě. Teď mne čeká instalace na virtuální privátní server s VPN. Řešení se sockety mi vyhovuje. Pokud by zákazník potřeboval pŕístup na databázi kvůli reportům tak by se to mohlo změnit. Ale budu se tomu bránit.