Mysql Sunucusuna Uzaktan Bağlanmak/Sqlyog ile Cpanele Bağlanmak
İçindekiler:
- MySQL Sunucusunu Yapılandırma
- Uzak Makineden Bir Kullanıcıya Erişim Verme
- Güvenlik Duvarını Yapılandırma
- iptables
- UFW
- FirewallD
- Değişiklikleri Doğrulama
- Sonuç
Varsayılan olarak, MySQL sunucusu yalnızca localhost'tan gelen bağlantıları dinler, yani sadece aynı ana bilgisayarda çalışan uygulamalar tarafından erişilebilir.
Ancak, bazı durumlarda, MySQL sunucusuna uzak konumdan erişmek gerekir. Örneğin, yerel sisteminizden uzak MySQL sunucusuna bağlanmak istediğinizde veya uygulamanın veritabanı sunucusundan farklı bir makinede çalıştığı çok sunuculu bir dağıtım kullanırken. Bir seçenek MySQL sunucusuna SSH Tüneli üzerinden erişmek, diğeri ise MySQL sunucusunu uzak bağlantıları kabul edecek şekilde yapılandırmaktır.
Bu kılavuzda, bir MySQL sunucusuna uzak bağlantılara izin vermek için gerekli adımları uygulayacağız. Aynı talimatlar MariaDB için de geçerlidir.
MySQL Sunucusunu Yapılandırma
İlk adım, MySQL sunucusunu belirli bir IP adresini veya makinedeki tüm IP adreslerini dinleyecek şekilde ayarlamaktır.
MySQL sunucusu ve istemcileri özel bir ağ üzerinden birbirleriyle iletişim kurabiliyorsa, en iyi seçenek MySQL sunucusunu yalnızca özel IP'de dinleyecek şekilde ayarlamaktır. Aksi takdirde, sunucuya ortak bir ağ üzerinden bağlanmak istiyorsanız, MySQL sunucusunu makinedeki tüm IP adreslerini dinleyecek şekilde ayarlayın.
Bunu yapmak için MySQL yapılandırma dosyasını düzenlemeniz ve
bind-address
seçeneğinin değerini eklemeniz veya değiştirmeniz gerekir. Tek bir IP adresi ve IP aralıkları ayarlayabilirsiniz. Adres
0.0.0.0
ise, MySQL sunucusu tüm ana IPv4 arayüzlerindeki bağlantıları kabul eder. Sisteminizde IPv6 yapılandırılmışsa,
0.0.0.0
yerine
::
kullanın.
MySQL yapılandırma dosyasının konumu dağıtıma bağlı olarak değişir. Ubuntu ve Debian'da dosya
/etc/mysql/mysql.conf.d/mysqld.cnf
bulunurken, CentOS gibi Red Hat tabanlı dağıtımlarda dosya
/etc/mysql/mysql.conf.d/mysqld.cnf
bulunur.
Dosyayı metin düzenleyicinizle açın:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address
ile başlayan bir satır arayın ve değerini bir MySQL sunucusunun dinlemesi gereken IP adresine ayarlayın.
Varsayılan olarak, değer
127.0.0.1
olarak ayarlanmıştır (yalnızca localhost'ta dinler).
Bu örnekte, değeri
0.0.0.0
değiştirerek MySQL sunucusunu tüm IPv4 arayüzlerini dinleyecek şekilde ayarlayacağız
bind-address = 0.0.0.0 # skip-networking
skip-networking
içeren bir satır varsa, satırı silin veya satırın başına
#
ekleyerek yorum yapın.
MySQL 8.0 ve sonraki sürümlerde, bağlantı
bind-address
yönergesi mevcut olmayabilir. Bu durumda,
Bölüm.
Tamamlandığında, değişikliklerin etkili olması için MySQL hizmetini yeniden başlatın. Yalnızca kök veya sudo ayrıcalıklarına sahip kullanıcılar hizmetleri yeniden başlatabilir.
Debian veya Ubuntu üzerinde MySQL hizmetini yeniden başlatmak için şunu yazın:
sudo systemctl restart mysql
Hizmet çalışmasını yeniden başlatmak için CentOS gibi RedHat tabanlı dağıtımlarda:
Uzak Makineden Bir Kullanıcıya Erişim Verme
Sonraki adım, uzak kullanıcıya veritabanına erişime izin vermektir.
MySQL sunucusunda kök kullanıcı olarak aşağıdakileri yazarak oturum açın:
sudo mysql
mysql -uroot -p
MySQL kabuğunun içinden, uzak kullanıcıya erişim vermek için
GRANT
deyimini kullanın.
GRANT ALL ON database_name.* TO user_name@'ip_address' IDENTIFIED BY 'user_password';
Nerede:
-
database_name
kullanıcının bağlanacağı veritabanının adıdır.user_name
MySQL kullanıcısının adıdır.ip_address
, kullanıcının bağlanacağı IP adresidir. Kullanıcının herhangi bir IP adresinden bağlanmasına izin vermek için%
tuşunu kullanın.user_password
kullanıcıuser_password
.
Örneğin, IP
10.8.0.5
sahip bir istemci makineden
10.8.0.5
parolasıyla
foo
adlı bir kullanıcıya veritabanı
dbname
erişimine izin vermek için şunu çalıştırırsınız:
GRANT ALL ON dbname.* TO foo@'10.8.0.5' IDENTIFIED BY 'my_passwd';
Güvenlik Duvarını Yapılandırma
Son adım, güvenlik duvarınızı uzak makinelerden
3306
numaralı bağlantı noktasında (MySQL varsayılan bağlantı noktası) trafiğe izin verecek şekilde yapılandırmaktır.
iptables
sudo iptables -A INPUT -p tcp --destination-port 3306 -j ACCEPT
Belirli bir IP adresinden erişime izin ver:
sudo iptables -A INPUT -s 10.8.0.5 -p tcp --destination-port 3306 -j ACCEPT
UFW
UFW, Ubuntu'daki varsayılan güvenlik duvarı aracıdır. İnternet'teki herhangi bir IP adresinden erişime izin vermek (çok güvensiz):
sudo ufw allow 3306/tcp
Belirli bir IP adresinden erişime izin ver:
sudo ufw allow from 10.8.0.5 to any port 3306
FirewallD
Güvenlik DuvarıD, CentOS'ta varsayılan güvenlik duvarı yönetim aracıdır. İnternet'teki herhangi bir IP adresinden erişime izin vermek (çok güvensiz) yazın:
sudo firewall-cmd --permanent --zone=public --add-port=3306/tcp
sudo firewall-cmd --reload
Belirli bir bağlantı noktasındaki belirli bir IP adresinden erişime izin vermek için yeni bir FirewallD bölgesi oluşturabilir veya zengin bir kural kullanabilirsiniz.
mysqlzone
adında yeni bir bölge oluşturun:
sudo firewall-cmd --new-zone=mysqlzone --permanent
sudo firewall-cmd --reload
sudo firewall-cmd --permanent --zone=mysqlzone --add-source=10.8.0.5/32
sudo firewall-cmd --permanent --zone=mysqlzone --add-port=3306/tcp
sudo firewall-cmd --reload
Değişiklikleri Doğrulama
Uzak kullanıcının MySQL sunucusuna bağlanabildiğini doğrulamak için aşağıdaki komutu çalıştırın:
mysql -u user_name -h mysql_server_ip -p
Burada
user_name
, erişim izni verdiğiniz kullanıcının adıdır ve
mysql_server_ip
, MySQL sunucusunun çalıştığı ana bilgisayarın IP adresidir.
Her şey doğru şekilde kurulursa, uzak MySQL sunucusunda oturum açabilirsiniz.
ERROR 2003 (HY000): Can't connect to MySQL server on '10.8.0.5' (111)"
Aşağıdaki hata, oturum açmaya çalıştığınız kullanıcının uzak MySQL sunucusuna erişim izninin olmadığını gösterir.
"ERROR 1130 (HY000): Host '10.8.0.5' is not allowed to connect to this MySQL server"
Sonuç
Varsayılan olarak en popüler açık kaynaklı veritabanı sunucusu olan MySQL, gelen bağlantıları yalnızca localhost üzerinden dinler.
Bir MySQL sunucusuna uzaktan bağlantılara izin vermek için aşağıdaki adımları gerçekleştirmeniz gerekir:
- MySQL sunucusunu tüm veya belirli bir arabirimi dinleyecek şekilde yapılandırın Uzak kullanıcıya erişim verin Güvenlik duvarınızdaki MySQL bağlantı noktasını açın.
Microsoft Edge tarayıcısında Çerezlere nasıl izin verilir veya engellenir

Microsoft Kenarınız Çerezleri engelliyorsa, Çerezlere izin verilmelidir mesajı görebilirsiniz. . Kenar tarayıcısında Çerezlere İzin Ver veya Engelle`yi öğrenin.
Nasıl İmzasız Uzantıların Firefox`a yüklenmesine izin verilir

Firefox, İmzasız Uzantıların yüklenmesine izin vermez. Firefox`u İmzasız Uzantılar`ı kurun ve Windows Pc`de devre dışı bırakılmış uzantıları yeniden etkinleştirin
Çok eşliliğe nasıl izin verilir ve Messenger`ın aynı anda birden çok örneğini çalıştırmanız

Windows 7 kayıt defterinizi birden çok örneğinin çalışmasına izin vermek için kullanabilirsiniz. Messenger.