Kapat
Türkiye'nin En büyük Eğitim Platformu,Veli bilgilendirme sistemi
Kayıt Ol Yardım Üye Listesi Ajanda Arama Bugünün Mesajları Tüm Konuları Okundu İşaretle
e-Okul.Biz | Veli Bilgilendirme Sistemi - Eğitim , Öğretmen , Ödev, Ders. Okul
        
Bilgisayarınızın Güvenliği Bilgisayarınızın güvenliği için gerekli programlar ve yapmanız gerekenler.
Geri git   e-Okul.Biz | Veli Bilgilendirme Sistemi - Eğitim , Öğretmen , Ödev, Ders. Okul > GENEL KONUŞALIM > Bilgisayar Dünyası > Bilgisayarınızın Güvenliği
Cevapla
Alt 17.02.08, 03:37   #1
Admin
Emekli :}
 
Admin - Ait Kullanıcı Resmi (Avatar)
Üyelik Tarihi : Feb 2008
Nerden : Hay'dan Hu'ya
Konular : 12897
Mesajlar : 13.273
Meslek : Üni
İtibar
Tecrübe Puanı : 1000
Rep Puanı : 1000
Rep Derecesi
Admin isimli üye tecrübe puanını kapatmıştır.
Standart Mysql nasıl korunur {?}

Mysql nasıl korunur {?} Giriş

MySQL Internet üzerindeki en popüler veritabanlarından biridir ve sıklıkla PHP ile birlikte kullanılır. Yüksek performansına oranla kolay kullanımı gibi bir çok avantajı bir yana, MySQL basit fakat çok etkili bir güvenlik mekanizması sunmaktadır. Ne yazık ki, MySql'in default kurulumu, şifresiz root yetkisi sağlaması ve hafıza taşması atakları için potansiyel güvelik açıkları bulundurması bu veritabanını saldırılar için kolay hedef haline getirmektedir. Bu makale, lokal ve uzak saldırılara karşı MySql'in nasıl güvenli hale getirilebileceğinin temel adımların tarif etmektedir.

Fonksiyonellik

Makalemizde bir önceki Apache ile ilgili makalemizde belirtilenlere uygun olarak üzerinde PHP kurulmuş Apache sunucumuz olduğunu varsayacağız ve bu da /chroot/httpd dizininde bulunacak.
Yukarıdakilerden farklı olarak, aşağıda belirtilenlerin varolduğunu kabul edeceğiz: MySQL veritabanı sadece PHP uygulamaları için kullanılacak, aynı host üzerinde kurulu olacak;
Mysqladmin, mysql, mysqldump gibi default yönetim araçları veritabanı yönetimi için kullanılacaktır;
Uzaktan veri yedeklemesi SSH protokolü kullanılarak gerçekleşecektir.

Güvenlik Gereklilikleri

Yüksek güvenlik seviyesi sağlamak için, MYSQL'in kurulumu ve konfigürasyonu, aşağıda belirtilen güvenlik gereklilikleri gerçekleştirilmelidir:
MySQL veritabanı chroot edilmiş ortamda uygulanacaktır;
MySQL işlemleri tek bir UID/GID altında çalışacak ve bu başka bir sistem işlemi için kullanılmayacaktır;

MYSQL'e sadece lokal erişime izin verilecektir;
MySQL root hesabı tahmini zor bir şifre ile korunacaktır;
Yönetici hesabı ismi değiştirilecektir;
Veritabanına Anonim erişim ( Nobody hesabı ile) engellenecektir;
Tüm örnek veritabanları ve tablolar silinecektir.

MySQL Kurulumu

MySQL güvenliğine başlamadan önce, sunucu üzerine yazılımı yüklemeliyiz. Daha önceki makalelerde olduğu gibi, kuruluma, işletim sistemi üzerinde MySQL veritabanı için kullanılacak tek ve düzgün grup ve kullanıcı hesabı yaratmakla başlayacağız:
pw groupadd mysql
pw useradd mysql -c "MySQL Server" -d /dev/null -g mysql -s /sbin/nologin


MySQL'i Derlemek

MYSQL yazılımını /usr/local/mysql dizini içinde derleyip kuracağız:
./configure --prefix=/usr/local/mysql --with-mysqld-user=mysql --with-unix-socket-path=/tmp/mysql.sock --with-mysqld-ldflags=-all-static
make
su
make install
strip /usr/local/mysql/libexec/mysqld
scripts/mysql_install_db
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chgrp -R mysql /usr/local/mysql

Genellikle, sunucu üzerinde kuurlum işlemleri daima MySQL manuelinde tarif edildiği gibidir.Tek değişiklik ise ./configure satırında belirtilmiş birkaç ilgili parametrenin kullanımıdır. En önemli farklılık ise MySQL'in statik linklenmesine etki eden --with-mysqld-ldflags=-all-static parametresinin kullanımıdır. Bu, 3. bölümde de tarif edildiği gibi, önemli bir değerde sunucu chroot ayarlama işlemlerini basite indirger. Diğer parametreleri de dikkate alırsak, bunlar da programa /usr/local/mysql dizinine yazılımı yüklemesi emrini verir, mysql account yetkisinde MySQL Daemon'u çalıştırır ve /tmp dizininde mysql.sock socket'i oluşturur.

Konfigürasyon Dosyasının Kopyalanması

Yukarıdaki komutlar uygulandıktan sonra, veritabanının muhtemel boyutuna göre (küçük, orta, büyük, çok büyük) default konfigürasyon dosyasını kopyalamalıyız. Örneğin:

cp support-files/my-medium.cnf /etc/my.cnf
chown root:sys /etc/my.cnf
chmod 644 /etc/my.cnf

Sunucunun Çalıştırılması

Bu noktada MySQL tamamı ile yüklenmiş ve çalışmaya hazırdır.Aşağıdaki komutu kullanarak MySQL'i çalıştırabiliriz:

/usr/local/mysql/bin/mysqld_safe &

Bağlantı Testi

Aşağıdaki şekilde veritabanı ile bağlantı kurmaya çalışın:
/usr/local/mysql/bin/mysql -u root mysql

Welcome to MySQL Monitor. Commands end with ; or \g. Your MySQL connection id is 2 to server version: 4.0.13-log Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> show databases;
+----------+
| Database |
+----------+
| mysql |
| test |
+----------+
2 rows in set (0.00 sec)

mysql> quit;

Birkez bağlantı başarılı olarak sağlandığında, veritabanını kapatabiliriz:
/usr/local/mysql/bin/mysqladmin -u root shutdown

ve yazılımın güvenliğine başlayabiliriz. Aksi halde, the /usr/local/mysql/var/`hostname`.err log dosyasını analiz etmeli ve bazı sorunları elimine etmeliyiz.

Sunucu Chroot Ayarları

MySQL güvenliğindeki ilk adım, MySQL sunucunun çalışacağı chroot edilmiş bir alan hazırlanmasıdır. Chroot tekniği “ Adım adım Apache Güvenliği” makalemizde ayrıntılı olarak tarif edilmişti, bu sebeple eğer bu teknik hakkında bilginiz yoksa ya da neden gerekli olduğunu öğrenmek istiyorsanız, bahse konu makaleyi okumanızı tavsiye ederim.

İşletim Sistemi

Bir önceki makalede olduğu gibi, işletim sistemimiz FreeBSD 4.7. Ancak belirtilen metotlar gelişmiş Unix ve Unix_benzeri sistemlerde de uygulanabilir.

Chroot Alanı Hazırlama

Chroot alanı hazırlamak için, aşağıdaki dizin yapısını oluşturmamız gerekiyor:
mkdir -p /chroot/mysql/dev
mkdir -p /chroot/mysql/etc
mkdir -p /chroot/mysql/tmp
mkdir -p /chroot/mysql/var/tmp
mkdir -p /chroot/mysql/usr/local/mysql/libexec
mkdir -p /chroot/mysql/usr/local/mysql/share/mysql/english

Erişim Haklarının Ayarlanması

Yukarıda belirtilen dizinlere erişim hakları, aşağıdaki şekilde ayarlanmalıdır:
chown -R root:sys /chroot/mysql
chmod -R 755 /chroot/mysql
chmod 1777 /chroot/mysql/tmp

Dizin Yapısı Oluşturmak

Sonrasında ise, aşağıdaki dosyalar yeni dizin yapısıne kopyalanmalıdır:

cp /usr/local/mysql/libexec/mysqld /chroot/mysql/usr/local/mysql/libexec/
cp /usr/local/mysql/share/mysql/english/errmsg.sys /chroot/mysql/usr/local/mysql/share/mysql/english/
cp /etc/hosts /chroot/mysql/etc/
cp /etc/host.conf /chroot/mysql/etc/
cp /etc/resolv.conf /chroot/mysql/etc/
cp /etc/group /chroot/mysql/etc/
cp /etc/master.passwd /chroot/mysql/etc/passwords
cp /etc/my.cnf /chroot/mysql/etc/
Admin isimli Üye şimdilik offline konumundadır   Alıntı İle Cevapla
Cep Telefonu Sitemiz
Reklam alanlarımız
Cevapla

Tags
korunur, mysql, nasil, nasl, nasıl

Seçenekler
Stil

Yetkileriniz
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML Kodları Kapalı
Gitmek İstediğiniz Klasörü Seçin

Benzer Konular
Konu Konuyu Başlatan Forum Yanıtlar Son Mesaj
Nasıl Sınıf Geçilir ve Nasıl Alan Seçilir Konulu Tanıtıcı Broşür e_okul Alan Seçimi&Mesleki Rehberlik 0 18.10.08 00:02
Pm Nasıl Atılıyor? seninbey Yardım Köşesi 5 27.09.08 22:37
Saç Nasıl Uzar ? Admin Biyoloji 0 20.08.08 16:31
nasıl öğretmeliyim ttef Makaleler&Seminer Konuları 1 07.05.08 03:04
CIA nasıl çalışır Admin Dünya 0 14.03.08 19:21


Tüm Saatler GMT +3. Saat: 15:09 .




5846 sayılı kanunun 25. maddesinin ek 4. maddesine göre hakkı ihlal edilen öncelikle üç gün içinde ihlalin durdulmasını istemek zorundadır.
Durdurulmadığı takdirde savcılığa başvurabilir. Eğer ihlal edilen bir durum söz konusu ise matematikcafe.net[at]gmail.com adresinden bize ulaşınız.

Haber Arapça Dersleri E-Okul matematik
Powered by vBulletin Version 3.7.2
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.

Bu Forum Lisanslı Bir vBulletin Forumudur Kopyalanamaz Ya Da Çalınamaz
Design By MostSpeeD Şanlıurfa
Forum SEO by Zoints