MySQL'e Uzak Bağlantılara Nasıl İzin Verilir


MySQL veritabanı ile çalışıyorsanız, veritabanınızı güvende tutarken karşılaştığınız zorlukların zaten farkındasınızdır. SQL enjeksiyonlarını kullanarak kaba kuvvet saldırılarına kadar veritabanı korsanlığı girişimlerinden, özellikle bir veritabanıyla uzaktan çalışıyorsanız verilerinizi güvende tutmak zordur.

Bir SQL sunucusunu uzak bağlantılara izin verecek şekilde yapılandırmanın yolları vardır. , ancak MySQL sunucusunda uzak bağlantılara izin vermek veritabanınızı bilgisayar korsanları için kolay bir hedef haline getirebileceğinden dikkatli olmanız gerekir. Bir MySQL veritabanına güvenli, uzak bağlantılara izin vermek istiyorsanız, bilmeniz gerekenler şunlardır.

İçindekiler Tablosu

    Senden Önce Başlayın

    MySQL veritabanınızda herhangi bir değişiklik yapmadan önce, özellikle bir üretim sunucusunda (bir sunucu) çalışıyorsanız veritabanınızı yedeklemenizönemlidir. aktif kullanımda). Veritabanınızda veya onu barındıran sunucuda yaptığınız herhangi bir değişiklik, bir şeyler ters giderse ciddi veri kaybına neden olabilir.

    Ayrıca, sunucunuzun bağlantılarında yapılan değişikliklerin daha sonra ona erişmenizi engelleyebileceğini de görebilirsiniz. Böyle bir durumda, daha fazla destek için bir sunucu yöneticisine danışmanız gerekebilir. Değişikliklerinizin uzaktan denemeden önce çalışıp çalışmadığını kontrol etmek için yerel olarak çalıştırılan bir MySQL sunucusunda herhangi bir değişikliği denemek iyi bir fikirdir.

    Ayrıca, uzak bir sunucuda değişiklik yapıyorsanız,' Bağlanmak ve değişiklik yapmak için güvenli bir yola ihtiyacınız olacak. SSH (Güvenli Kabuk), uzak sunucunuza bağlanmanıza izin verdiği için genellikle bunu yapmanın en iyi yoludur. SSH'yi yerel ağınızdaki Raspberry Pi'de barındırılan gibi sunuculara bağlanmak için de kullanabilirsiniz.

    Bu kılavuz, aşağıdaki adımlarda size yol gösterecektir. MySQL'i uzak bağlantılara izin verecek şekilde yapılandırmak, ancak önce MySQL sunucunuzu barındıran sunucuya doğrudan veya uzaktan erişiminiz olduğundan emin olmanız gerekir.

    Sunucunuza SSH üzerinden uzaktan erişiminiz olmadığını varsayalım (örneğin). Bu durumda, kök mySQL hesabınız zaten uzak bağlantılara izin vermiyorsa, MySQL veritabanınızı doğrudan uzak bağlantılara izin verecek şekilde yapılandıramazsınız. Bu nedenle, devam etmeden önce bu bağlantıyı kurmanız gerekecek.

    MySQL Yapılandırma Dosyanızı Düzenleme

    MySQL'i uzaktan erişime izin verecek şekilde yapılandırmanın ilk adımı bağlantıları MySQL yapılandırma dosyanızı düzenlemektir. Bu aşamada, bu kılavuz, mySQL veritabanınızı barındıran sunucuya, PC'ye veya Mac'e zaten bağlı olduğunuzu ve konsol erişimine sahip olduğunuzu varsayacaktır.

    Alternatif olarak, Mac veya Linux'ta açık bir terminal veya Windows'ta bir metin düzenleyici kullanarak yerel bir MySQL sunucusu yapılandırabilirsiniz.

    1. Başlamak için tercih ettiğiniz konsol metin düzenleyicisini kullanın. MySQL veritabanı dosyanızı düzenlemek için. Linux'ta, nanodüzenleyicisini kullanarak bu dosyayı düzenlemek için bir terminal veya SSH penceresine sudo nano /etc/mysql/mysql.conf.d/mysqld.cnfyazın (varsayılan MySQL veritabanınız varsayılan konumdadır).
      1. Windows kullanıyorsanız, Dosya Gezgini'ni açın ve MySQL kurulumunuzu içeren klasöre erişin (örn. C:/Program Dosyaları/MySQL/MySQL Server 8.0). Girişi çift tıklatarak varsayılan metin düzenleyicinizi (örn. Not Defteri) kullanarak my.inidosyasını açın. Orada değilse, önce dosyayı oluştur.
        1. Mac'te bir terminal penceresi açın ve sudo nano /usr/local/etc/my.cnfyazın. MySQL ev yapımı bira kullanmak yüklediyseniz bu, MySQL için varsayılan yapılandırma dosyasıdır.
        2. Yukarıda belirtilen konumlar varsayılan konumlardır. MySQL yapılandırma dosyaları için. Bu komutlar işe yaramazsa, ilgili dosyaları (my.cnf, mysqld.cnfveya my.ini) aramanız gerekir. güçlü>) elle ilgili dosya yolunu bulmak için.

          Güvenli Bir Bağlantı Adresi IP Aralığı Ayarlama

          1. sunucunuz için MySQL yapılandırma dosyasını açtıysanız, dosyanın bağlama adresibölümüne ulaşmak için klavyenizin ok tuşunu kullanın. Bu IP aralığı, genellikle yalnızca 127.0.0.1kullanan yerel makineden veya sunucudan gelen bağlantılara izin verecek şekilde ayarlanan veritabanınızla olan bağlantıları sınırlar.
          2. 18 18s>
          3. MySQL veritabanınızı mevcut internet bağlantınızı kullanan cihazlardan bağlantılara izin verecek şekilde yapılandırmak istiyorsanız, önce genel IP adresinizi bulun, ardından 127.0.0.1'i değiştirin.bu IP adresiyle. Alternatif olarak, bağlantılara izin vermek istediğiniz cihaz veya sunucu için bir IP adresi ile değiştirin.
            1. Bazı durumlarda , bir MySQL veritabanına tümuzak bağlantılara izin vermek isteyebilirsiniz. Bu, aşırı risktaşır ve bir üretim sunucusunda kullanılmamalıdır. Ancak buna izin vermek istiyorsanız, 127.0.0.1'i 0.0.0.0ile değiştirin.
              1. Temel Ayarlarbölümündeki bağlantı noktasıdeğerini not edin. Bu, bir sonraki bölümde gerekli olacaktır. Görünmüyorsa, 3306bağlantı noktası olan varsayılan değer kullanılır. Yeni bir satıra xxxxyazarak ve xxxxyerine uygun bir bağlantı noktası değeri yazarak kendi bağlantı noktanızı ekleyebilirsiniz.
                1. MySQL yapılandırma dosyanızda bağlama adresiniyapılandırdıktan sonra dosyayı kaydedin. Linux kullanıyorsanız, bunu yapmak için Ctrl + Ove Ctrl + Xseçeneğini belirleyin. Mac'te Command + Ove Command + X'i seçin. Windows kullanıcıları Dosya>Kaydet'i seçerek kaydedebilir.
                  1. Ardından, Linux ve Mac kullanıcıları MySQL'i mysql.server stop && mysql.server startveya mysql.server restartyazarak yeniden başlatabilirler. sudo kullanarak komutunu yükseltmeniz (örn. sudo mysql.server restart) ve mysql.server dosyasına uygun yolu kullanmanız gerekebilir (örn. /usr /local/bin/mysql.server).
                  1.  Yukarıdaki komut işe yaramazsa, bunun yerine sudo service mysql restart'ı deneyin.
                    1. MySQL'i Windows'ta yeniden başlatmak için Başlat menüsüne sağ tıklayıp Windows PowerShell (Yönetici). PowerShell penceresinde net stop mysql80yazın ve ardından net start mysql80yazın ve mysql80'i bilgisayarınızdaki doğru hizmet adıyla değiştirin.
                    2. Windows'ta doğru hizmet adından emin değilseniz, onu bulmak için net startyazın.Yapılandırmanızı yeniden yükleyemiyorsanız, sunucunuzu yeniden başlatın ve bunun yerine MySQL'i (gerekirse) manuel olarak yeniden yükleyin.

                      Güvenlik Duvarlarınızı Yapılandırma

                      Bu aşamada, MySQL veritabanınız, MySQL yapılandırma dosyanızda bind-addressdeğeri olarak belirlediğiniz IP adresini kullanan cihazlardan (veya bu değeri 0.0.0.0 olarak ayarlarsanız tüm cihazlardan) uzak bağlantılara izin vermelidir.yerine). Ancak, bağlantılar cihazınız veya ağ güvenlik duvarınıztarafından engellenmeye devam edecektir.

                      Çoğu sunucu ve bilgisayar, belirli bir bağlantı noktasına erişim izni verilmediği sürece bağlantıları engellemek için bir güvenlik duvarı kullanır. Bunu yapılandırma adımları, MySQL'i Windows'ta mı yoksa Linux'ta mı çalıştırdığınıza bağlı olarak değişecektir. Mac güvenlik duvarları varsayılan olarak devre dışıdır, bu nedenle burada herhangi bir ek adımı tamamlamanız gerekmez.

                      Linux Güvenlik Duvarlarını Yapılandır

                      Birçok Linux sunucusu iptables'ı varsayılan güvenlik duvarı yardımcı programı olarak kullanın. Aşağıdaki adımları izleyerek yapılandırabilirsiniz.

                      1. Bir terminal veya SSH bağlantısı açın ve sudo iptables -A INPUT -p tcp -s XXXX –dport YYYY -j ACCEPT. XXXXöğesini MySQL bağlantılarına kimdenizin vermek istediğiniz cihazın IP adresiyle değiştirin ve YYYYöğesini MySQL yapılandırmanızdaki eşleşen bağlantı noktası değeriyle değiştirin dosyası (ör. 3306).
                        1. Bu, güvenlik duvarını geçici olarak yapılandıracaktır. Debian veya Ubuntu tabanlı bir Linux sunucusu kullanıyorsanız, terminale veya SSH'ye sudo netfilter-persistent saveve sudo netfilter-persistent reloadyazarak bu değişikliği kalıcı hale getirin penceresi.
                        2. Eğer iptables Linux dağıtımınız için varsayılan güvenlik duvarı aracı değilse, daha fazla bilgi için dağıtımınızın kullanım kılavuzuna bakmanız gerekir. Belirli paketler (örneğin, netfilter-persistent) kullanılamıyorsa, yüklemek için dağıtımınızın yazılım havuzu aracını kullanın (ör. sudo apt install netfilter-persistent).

                          Windows Güvenlik Duvarlarını Yapılandırma

                          Veritabanınızı barındırmak için bir Windows PC veya sunucu kullanıyorsanız, aşağıdaki adımları kullanarak güvenlik duvarınızı yapılandırabilirsiniz:

                          1. Başlat menüsünü sağ tıklayın ve Çalıştır'ı seçin.
                            1. Çalıştırkutusuna wf.mscyazın ve Tamam'ı seçin güçlü>.
                              1. Windows Defenderpenceresinde, Gelen Kuralları <öğesini seçin. /strong>>Yeni Kural.
                                1. Yeni Gelen Kural Sihirbazı'ndapenceresinde, Bağlantı Noktası>Sonraki'ni seçin.
                                  1. Bir sonraki menüde, seçeneklerden TCP'yi seçin, 3306(veya MySQL yapılandırma dosyanızda hangi port değeri listeleniyorsa) yazın, ardından İleri<'yi seçin /strong>.
                                    1. İşlemmenüsünde varsayılan seçeneği Bağlantının etkinleştirilmesine izin verin, ardından İleri'yi seçin.
                                      1. Bunu onaylayın kuralın tüm ağ türlerine uygulanmasını istiyorsanız, ardından İleri'yi seçin.
                                        1. Sağlanan bağlantı noktasına kural için açıklayıcı bir ad yazın (örn. MySQL) , ardından güvenlik duvarı kuralları listenize eklemek için Bitir'i seçin.
                                        2. Bağlanmada sorun yaşıyorsanız yukarıdaki adımları tekrarlayın. , aynı ayrıntıları (bağlantı noktası 3306, vb.) kullanarak güvenlik duvarı ayarlarınızda yeni bir giden kuralıoluşturduğunuzdan emin olun. Veritabanınıza gelen ve giden bağlantılara izin vermek için yerel ağ yönlendiricinizi gerekli engellenen bağlantı noktalarını açın olarak yapılandırmanız da gerekebilir.

                                          MySQL Kullanarak Uzak Bir Sunucuya Bağlanma

                                          MySQL veritabanınızı uzak bağlantılara izin verecek şekilde yapılandırdıktan sonra, onunla gerçekten bir bağlantı kurmanız gerekir. Bunu, bir terminalden veya PowerShell penceresinden mysqlkomutunu (Windows'ta mysql.exe) kullanarak yapabilirsiniz.

                                          Windows kullanıyorsanız, Başlamadan önce MySQL yerel olarak kurulur olduğundan emin olmanız gerekecek. Mac kullanıcıları MySQL ev yapımı bira kullanmak 'i terminalden yükleyebilir (brew install mysql), Linux kullanıcıları ise yerel uygulama havuzlarını kullanabilir (örn. sudo apt install mysqlgüçlü>) gerekli paketleri kurmak için.

                                          Linux veya Mac'te MySQL'e bağlanma

                                          1. Mac veya Mac'te uzak MySQL sunucunuza bağlanmak için Linux, yeni bir terminal penceresi açın ve mysql -u username -h XXXX:XXXX -pyazın. XXXX:XXXX'i uzak sunucu IP adresiniz ve bağlantı noktası numaranızla (örn. 100.200.100.200:3306) ve kullanıcı adı'nı MySQL kullanıcı adınızla değiştirin.
                                            1. İstendiğinde şifrenizi onaylayın. Bağlantı başarılı olursa, terminalde bir başarı mesajı görünür.
                                            2. Windows'ta MySQL'e bağlanılıyor

                                              1. Bağlanmak için Windows'ta uzak bir MySQL sunucusuna, Başlat menüsünü sağ tıklayıp Windows PowerShell (Yönetici)'yi seçerek yeni bir PowerShell penceresi açın.
                                                1. Yeni PowerShell penceresinde, bu dizini değiştirerek doğru klasörü girmek için cd “C:\Program Files\MySQL\MySQL Workbench 8.0\” yazın PC'nizdeki doğru kurulum dizini ile. Örneğin, MySQL sürümünüz 8.0.1 ise, bunun yerine MySQL Workbench 8.0.1klasörünü kullanın.
                                                  1. Buradan, .\mysql.exe -u kullanıcı adı -h X.X.X.X:XXXX -pyazın. XXXX:XXXX'i uzak sunucu IP adresiniz ve bağlantı noktası numaranızla (ör. 100.200.100.200:3306) ve kullanıcı adı'nı MySQL kullanıcı adıyla değiştirin. uzaktan erişime izin verir (örneğin root). Ekrandaki ek talimatları izleyin.
                                                  2. Oturum açma işlemini tamamlamak ve MySQL veritabanınıza uzaktan erişmek için sorulduğunda şifrenizi girin.
                                                  3. 39 39 39 39 39 39 39 s>

                                                    Bu işe yaramazsa, bu adımları ve -h localhostargümanını kullanarak SSH kullanarak (veya doğrudan erişerek) MySQL sunucunuzu barındıran sunucuya veya PC'ye bağlanın. Ardından aşağıdaki adımları izleyerek uygun bir kullanıcı hesabı oluşturabilirsiniz.

                                                    Bir MySQL Veritabanına Uzaktan Kullanıcı Erişimine İzin Verme

                                                    Bu noktada, sunucunuzun kök kullanıcı hesabını veya yükseltilmiş ayrıcalıklara sahip başka bir kullanıcı hesabını kullanarak MySQL sunucunuza uzaktan bağlanabilirsiniz. Bu erişim düzeyi güvenli olmadığından, MySQL veritabanınıza erişmek için daha kısıtlı bir hesap oluşturmayı tercih edebilirsiniz.

                                                    Bu hesabın MySQL sunucunuza sınırlı erişimi olacak ve yalnızca seçili veritabanlarıyla etkileşime girmesine izin verecek. Diğer veritabanı verilerine erişme, yeni kullanıcı hesapları oluşturma vb. gibi daha ciddi değişiklikler yapamaz. 

                                                    MySQL sunucunuzda uzaktan oturum açabilmeniz gerekir. Kök hesabınızı uzaktan kullanamıyorsanız, uzak bir SSH bağlantısı üzerinden mysqlkomutunu kullanarak veya sunucuyu barındıran bilgisayara veya sunucuya doğrudan erişerek sunucunuzun kabuğuna erişmeniz gerekir.

                                                    1. Uzak MySQL kabuğunuzda (mysqlaracını kullanarak), CREATE USER “username”@”xxxx” yazın;ve Gir'i seçin. kullanıcı adınıoluşturmak istediğiniz kullanıcı adıyla, xxxxbağlanmak istediğiniz IP adresiyle ve şifreyiuygun bir şifreyle değiştirin.
                                                      1. Yeni hesabınıza gerekli izinleri vermeniz gerekecek. Bunu yapmak için veritabanıadına HEPSİ GRANT yazın.* TO username@”x.x.x.x”;ve veritabanı adı, kullanıcı adı,ve x.x.x.x doğru ayrıntılarla değiştirin. İsterseniz, tüm veritabanlarına erişim izni vermek için veritabanıadı'nı *ile değiştirin.
                                                      2. Erişim verildiğinde, yeni hesabınızı kullanarak sunucunuza uzaktan bağlanmak için yukarıdaki bölümdeki adımları kullanın (örn. mysql -u kullanıcı adı -h XXXX:XXXX -p).

                                                        Veritabanı Verilerinizin Güvenliğini Sağlama

                                                        İster MySQL veya başka bir SQL türü ile çalışıyor olun veri güvenliğinizi korumak için bağlantılarınızı güvende tutmanız önemlidir. Bunu yapmanın iyi bir yolu, eski (ve kolayca tahmin edilebilir) şifrelere güvenmek yerine sunucunuza uzaktan erişim için SSH anahtarları oluşturun yapmaktır.

                                                        Veri kaybı konusunda endişeleniyorsanız, çevrimiçi olarak kolayca veritabanınızı yedekleyin yapabilirsiniz. Çoğu veritabanı Linux sunucuları kullanılarak çalıştırılır; bir Linux dosya yedeklemesini kolayca otomatikleştirin yapabilirsiniz. MySQL'i Windows üzerinde çalıştırıyorsanız, benzer bir Windows için otomatik yedekleme sistemi ayarlayarak acil bir durumda verilerinizi geri yükleyebilirsiniz.

                                                        İlgili Mesajlar:


                                                        9.08.2021