{"id":192,"title":"SQL Notlar\u0131: SSL Ba\u011flant\u0131 Kurulumu","content":"<p>### MySQL'de SSL Ba\u011flant\u0131 Kurulumu ve De\u011fi\u015fkenlerin G\u00f6sterilmesi<\/p><p>MySQL, g\u00fcvenli ba\u011flant\u0131lar kurmak ve sunucu de\u011fi\u015fkenlerini y\u00f6netmek i\u00e7in \u00e7e\u015fitli ara\u00e7lar sunar. Bu yaz\u0131da, **SSL ba\u011flant\u0131 kurulumu** ve **SHOW VARIABLES** komutu ile ilgili temel bilgileri ve kullan\u0131m \u00f6rneklerini ele alaca\u011f\u0131z.<\/p><p>---<\/p><p>### SSL Ba\u011flant\u0131 Kurulumu<\/p><p>MySQL'de SSL ba\u011flant\u0131lar\u0131, veri ileti\u015fimini \u015fifreleyerek g\u00fcvenli hale getirir. Bu \u00f6zellik, \u00f6zellikle hassas verilerin iletilmesi gereken durumlarda \u00f6nemlidir.<\/p><p>#### Debian Tabanl\u0131 Sistemlerde SSL Kurulumu<br>1. **OpenSSL ve Gerekli K\u00fct\u00fcphanelerin Kurulumu:**<br>&nbsp; ```bash<br>&nbsp; apt-get -y install openssl<br>&nbsp; apt-get -y install libssl-dev<br>&nbsp; ```<\/p><p>2. **SSL Sertifikalar\u0131n\u0131n Olu\u015fturulmas\u0131:**<br>&nbsp; ```bash<br>&nbsp; mkdir \/home\/ubuntu\/mysqlcerts<br>&nbsp; cd \/home\/ubuntu\/mysqlcerts<\/p><p>&nbsp; openssl genrsa 2048 &gt; ca-key.pem<br>&nbsp; openssl req -new -x509 -nodes -days 3600 -key ca-key.pem -out ca.pem<\/p><p>&nbsp; openssl req -newkey rsa:2048 -days 3600 -nodes -keyout server-key.pem -out server-req.pem<br>&nbsp; openssl rsa -in server-key.pem -out server-key.pem<br>&nbsp; openssl x509 -req -in server-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem<\/p><p>&nbsp; openssl req -newkey rsa:2048 -days 3600 -nodes -keyout client-key.pem -out client-req.pem<br>&nbsp; openssl rsa -in client-key.pem -out client-key.pem<br>&nbsp; openssl x509 -req -in client-req.pem -days 3600 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem<br>&nbsp; ```<\/p><p>3. **MySQL Yap\u0131land\u0131rma Dosyas\u0131na SSL Ayarlar\u0131n\u0131n Eklenmesi:**<br>&nbsp; ```bash<br>&nbsp; vi \/etc\/mysql\/mysql.conf.d\/mysqld.cnf<br>&nbsp; ```<br>&nbsp; `` b\u00f6l\u00fcm\u00fcne a\u015fa\u011f\u0131daki sat\u0131rlar\u0131 ekleyin:<br>&nbsp; ```ini<br>&nbsp; ssl-ca = \/home\/ubuntu\/mysqlcerts\/ca.pem<br>&nbsp; ssl-cert = \/home\/ubuntu\/mysqlcerts\/server-cert.pem<br>&nbsp; ssl-key = \/home\/ubuntu\/mysqlcerts\/server-key.pem<br>&nbsp; ```<\/p><p>4. **MySQL'in Yeniden Ba\u015flat\u0131lmas\u0131:**<br>&nbsp; ```bash<br>&nbsp; service mysql restart<br>&nbsp; ```<\/p><p>5. **SSL Ba\u011flant\u0131s\u0131n\u0131n Test Edilmesi:**<br>&nbsp; ```bash<br>&nbsp; mysql --ssl-ca=ca.pem --ssl-cert=client-cert.pem --ssl-key=client-key.pem -h 127.0.0.1 -u superman -p<br>&nbsp; ```<\/p><p>&nbsp; Ba\u011flant\u0131n\u0131n g\u00fcvenli oldu\u011funu do\u011frulamak i\u00e7in:<br>&nbsp; ```sql<br>&nbsp; SHOW VARIABLES LIKE '%ssl%';<br>&nbsp; ```<\/p><p>#### CentOS\/RHEL 7'de SSL Kurulumu<br>CentOS\/RHEL 7'de SSL kurulumu benzer ad\u0131mlar\u0131 i\u00e7erir, ancak sertifikalar\u0131n konumu ve dosya yollar\u0131 farkl\u0131 olabilir. \u00d6rne\u011fin, sertifikalar `\/etc\/pki\/tls\/certs\/mysql\/` dizinine yerle\u015ftirilir ve MySQL yap\u0131land\u0131rma dosyas\u0131 (`\/etc\/my.cnf`) g\u00fcncellenir.<\/p><p>---<\/p><p>### SHOW VARIABLES ve SHOW STATUS Komutlar\u0131<\/p><p>MySQL'de sunucu de\u011fi\u015fkenlerini ve durum bilgilerini g\u00f6r\u00fcnt\u00fclemek i\u00e7in `SHOW VARIABLES` ve `SHOW STATUS` komutlar\u0131 kullan\u0131l\u0131r.<\/p><p>#### SHOW VARIABLES \u00d6rne\u011fi<br>Sunucu de\u011fi\u015fkenlerini g\u00f6r\u00fcnt\u00fclemek i\u00e7in:<br>```sql<br>SHOW VARIABLES;<br>```<\/p><p>Belirli bir de\u011fi\u015fkeni filtrelemek i\u00e7in:<br>```sql<br>SHOW VARIABLES LIKE 'max_join_size';<br>```<\/p><p>Veya joker karakterler kullanarak:<br>```sql<br>SHOW VARIABLES LIKE '%size%';<br>```<\/p><p>#### SHOW STATUS \u00d6rne\u011fi<br>Sunucu durum bilgilerini g\u00f6r\u00fcnt\u00fclemek i\u00e7in:<br>```sql<br>SHOW STATUS;<br>```<\/p><p>Belirli bir durum de\u011fi\u015fkenini filtrelemek i\u00e7in:<br>```sql<br>SHOW STATUS LIKE 'Threads_connected';<br>```<\/p><p>#### GLOBAL ve SESSION Modifikat\u00f6rleri<br>- `GLOBAL`: Sunucunun genel de\u011fi\u015fkenlerini ve durum bilgilerini g\u00f6sterir.<br>- `SESSION`: Mevcut oturum i\u00e7in ge\u00e7erli de\u011fi\u015fkenleri ve durum bilgilerini g\u00f6sterir.<\/p><p>\u00d6rnek:<br>```sql<br>SHOW GLOBAL VARIABLES;<br>SHOW SESSION STATUS;<br>```<\/p><p>---<\/p><p>### Sonu\u00e7<\/p><p>MySQL'de SSL ba\u011flant\u0131lar\u0131 kurmak ve sunucu de\u011fi\u015fkenlerini y\u00f6netmek, veritaban\u0131 g\u00fcvenli\u011fi ve performans\u0131 a\u00e7\u0131s\u0131ndan olduk\u00e7a \u00f6nemlidir. SSL ba\u011flant\u0131lar\u0131, veri ileti\u015fimini \u015fifreleyerek g\u00fcvenli hale getirirken, `SHOW VARIABLES` ve `SHOW STATUS` komutlar\u0131, sunucu yap\u0131land\u0131rmas\u0131 ve performans\u0131 hakk\u0131nda de\u011ferli bilgiler sa\u011flar. Bu ara\u00e7lar\u0131 do\u011fru bir \u015fekilde kullanarak, veritaban\u0131 y\u00f6netimini daha g\u00fcvenli ve verimli hale getirebilirsiniz.<\/p>","excerpt":"MySQL'de SSL ba\u011flant\u0131lar\u0131 kurmak ve sunucu de\u011fi\u015fkenlerini y\u00f6netmek, veritaban\u0131 g\u00fcvenli\u011fi ve performans\u0131 a\u00e7\u0131s\u0131ndan olduk\u00e7a \u00f6nemlidir. SSL ba\u011flant\u0131lar\u0131, veri ileti\u015fimini \u015fifreleyerek g\u00fcvenli hale getirirken, `SHOW VARIABLES` ve `SHOW STATUS` komutlar\u0131, sunucu yap\u0131land\u0131rmas\u0131 ve performans\u0131 hakk\u0131nda de\u011ferli bilgiler sa\u011flar. Bu ara\u00e7lar\u0131 do\u011fru bir \u015fekilde kullanarak, veritaban\u0131 y\u00f6netimini daha g\u00fcvenli ve verimli hale getirebilirsiniz.","created_at":"2025-01-13 15:57:35","updated_at":"2026-09-06 10:15:24","category_id":9,"view_count":627,"reading_time":3,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2025-01-13 15:57:35","featured_image":"resimyok.jpg","slug":"sql-notlari-ssl-baglanti-kurulumu","category_name":"Yaz\u0131l\u0131m","category_slug":"yazilim"}