Sezer Yesiltas
28 Mart 2007
 

MySQL Veritabanı Güvenliği
MySQL Veritabanınızda bilgileriniz güvende mi?

Bilgisayarınıza kurduğunuz veya internette host ettirdiğiniz bazı uygulamalar ücretsiz MySQL veritabanını kullanırlar. MySQL veritabanı belli bir porttan sunucu olarak izmet verdiği için internetten ulaşıma da imkan sağlamaktadır.

Belki de oldukça kritik olan bilgilerinizin tutulduğu bu veritabanında güvenliği nasıl sağlayacaksınız? Bunun için bir kaç küçük ama önemli bilgi işe yarayacaktır.


Bu işlemleri yapabilecek bir grafik arayüz programına sahip değilseniz, komut satırından da yapabilirsiniz:


Bir MySQL database'indeki kullanıcıların listesini almak:

mysql> use mysql;
Database changed
mysql> select user,host from user;

+-------------+-----------+
| user | host |
+-------------+-----------+
| defaultuser | % |
| root | localhost |
+-------------+-----------+
2 rows in set (0.00 sec)
mysql>

Bir MySQL database'ine kullanıcı eklemek:

shell> mysql -u root --password=sifre
mysql> create user kullanici@localhost;

Bir MySQL database'inden kullanıcı silmek:

shell> mysql -u root --password=sifre
mysql> drop user kullanici@localhost;

Bir MySQL database kullanıcısının şifresini degistirmek:

shell> mysql -u root --password=sifre
mysql> SET PASSWORD FOR 'kullanici'@'localhost' = PASSWORD('yenisifre');
veya

mysql> SET PASSWORD FOR 'kullanici'@'host_name' = PASSWORD('yenisifre');

Bir MySQL database'e anonim (kullanıcısız ve şifresiz) erişimi kaldırmak:

shell> mysql -u root --password=sifre
mysql> DELETE FROM mysql.user WHERE User = '';
mysql> FLUSH PRIVILEGES;

Bir MySQL database'ine root (tam yetkili) erişimi kaldırmak (tavsiye edilmez, enazından root@localhost'u silmeyin):

shell> mysql -u root --password=sifre
mysql> DELETE FROM mysql.user WHERE User = 'root';
mysql> FLUSH PRIVILEGES;

Bir kullanıcıya bir MySQL database'ini sadece lokalden kullanma yetkisi vermek:

shell> mysql -u root --password=sifre
mysql> GRANT ALL PRIVILEGES ON veritabaniadi.* TO 'kullanici'@'localhost' WITH GRANT OPTION;

Bir MySQL database kullanıcısına tüm uzak makınalardan bağlanma hakkı vermek:

shell> mysql -u root --password=sifre
mysql> create user 'kullanici'@'%';
mysql> GRANT ALL PRIVILEGES ON veritabaniadi.* TO 'kullanici'@'%' WITH GRANT OPTION;

Bir MySQL database kullanıcısına belli bir ip'den bağlanma hakkı vermek:

shell> mysql -u root --password=sifre
mysql> create user kullanici@81.181.34.34;
mysql> GRANT ALL PRIVILEGES ON veritabaniadi.* TO 'kullanici'@'81.181.34.34' WITH GRANT OPTION;

Bir MySQL database kullanıcısına sadece lokalden bağlanma hakkı vermek (makina dışından bağlantıyı kapatmak):

shell> mysql -u root --password=sifre
mysql> DELETE FROM mysql.user WHERE User = 'kullanici';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'kullanici'@'localhost' identified by sifre WITH GRANT OPTION;

Bir MySQL database'inin yedeğini almak:

shell>mysqldump -u kullanici --password=sifre --all-databases > backup.sql


Etiketler: , , ,

 

Pardus... Özgürlük İçin...

Yeni yazılardan RSS ile haberdar olun
Yeni yazılardan Email ile haberdar olun
Kullandığım veya araştırdığım Windows, Linux veya Cep Telefonu yazılımların tanıtımını, ilgimi çeken web siteleri ve hizmetlerini ve bazı ufak tefek temel bilgileri vakit buldukça burada paylaşacağım.
'Burada yer alan web sitesi,kurum,kuruluş veya yazılımlarla ilgili herhangi bir ticari ilişkim bulunmadğı gibi tüm yorumlar tamamen kişiseldir ve şahsi deneyimlere dayalıdır. Tanıtım yapılan yazılım ve hizmetler, üretici kuruluşa (ve yazdıklarımdan dolayı bana) herhangi bir sorumluluk yüklemez.'



Fotoğrafım
Ad: Sezer Yeşiltaş
Konum: Istanbul, Turkey
Arşivler

Aralık 2005 / Ocak 2006 / Şubat 2006 / Mart 2006 / Nisan 2006 / Mayıs 2006 / Haziran 2006 / Temmuz 2006 / Ağustos 2006 / Eylül 2006 / Ekim 2006 / Kasım 2006 / Aralık 2006 / Ocak 2007 / Şubat 2007 / Mart 2007 / Nisan 2007 / Mayıs 2007 / Haziran 2007 / Temmuz 2007 / Ağustos 2007 / Eylül 2007 / Kasım 2007 / Aralık 2007 / Ocak 2008 / Şubat 2008 / Nisan 2008 / Mayıs 2008 /

Powered by Blogger