Ön Gereksinimler

Genel

  • flex 2.54
  • bison 1.28
  • autoconf 2.52
  • automake 1.4
  • libtool 1.4
  • yacc 91.7.30
  • freetype2-devel[15]
  • re2c[16]

diye devam ediyor.

Bütün önemli dağıtımlar bu genel ön gereksinimleri içermelidirler.

OpenSSL

OpenSSL nedir?

 

OpenSSL projesi güvenliği geliştirmek için çaba harcayan ticari, geniş özellikli ve açık kaynak kodlu, Güvenli Soket Katmanı (SSL v2/v3), İletim Seviyesi güvenliği (TLS v1) protokollerini uygulayan, çok güçlü genel amaçlı bir şifreleme kütüphanesidir. Bu proje bütün dünyada iletişim, plan ve OpenSSL araçlarını geliştirmek için interneti kullanan gönüllüler topluluğu tarafından yönetilir.

OpenSSL Eric A. Young ve Tim J. Hudson tarafından geliştirilen mükemmel SSLeay kütüphanesi temellidir. OpenSSL aracı sizin alıp ticari ve ticari olmayan özel amaçlarınız için kullanmakta özgür olduğunuz Apache-tarzı lisans ile lisanslanmıştır.

Yazarların görüşüne göre, açık kaynak kodlu yazılımlarla güvenli bir Unix sunucu kurmak için temeldir; mod_ssl, OpenSSH ve şifreli veri işlemeyi sağlayan ürünler gibi bütün ürünler buna ihtiyaç duyar.

 
--www.openssl.org 

OpenSSL yukarıda bahsedilen ürünlerin ihtiyaç duyduğu kütüphaneleri ve başlık dosyalarını sağlar, hemde istemci ve sunucu sertifikaları için uygulama sağlar.

Kaynak paketini indirin

Orjinal Sitehttp://www.openssl.org

Derleme ve Kurulum

cd /usr/local
tar -xvzf openssl-0.9.7.tar.gz

cd openssl-0.9.7

./config shared

make
make test
make install

echo "/usr/local/ssl/lib" >> /etc/ld.so.conf
ldconfig

Hızı artırmak için işlemci türünü belirtin

Öntanımlı Makefile i486 işlemcisi için kod üretir. Siz config shared yaptıktan sonra Makefile'ı düzenleyerek bunu değiştirebilirsiniz. -m486'yı bulun ve onu -march=athlon ile değiştirin.

GNU Database System

gdbm nedir?

 

GNU dbm bir veritabanı kümesidir. Onun çalışması standart UNIX dbm'e benzer.

 
--www.gnu.org/software/gdbm 

GNU dbm hemen hemen bütün dağıtımlarda kullanılan çok önemli bir uygulamadır. Dolayısıyla bütün dağıtımlarda kurulu gelir.(Denedim.)

Büyük ihtimalle Apache'yi oluşturmak için gereken başlık dosyaları ile birlikte mod_rewrite ve PHP kurulu gelmez.Lütfen dağıtımınızın CD/DVD'sine bakınız ve geliştirici paketi kurunuz (Sürüm değişebilir).

# rpm -i gdbm-devel-1.8.0-546

Bu işlem SuSE ve Red Hat için doğrulandı. Lütfen siz de Mandrake gibi RPM temelli sistemler için doğrulayın. Debian için aşağıda anlatılacaktır.

Debian temelli sistem kullanıcıları gdbm'i aşağıdaki gibi kurabilirler:

# apt-get install libgdbmg1-dev

Kaynak paketinden derleme ve kurulum

İstenmeyen bir durum olarak sizin dağıtımınız gdbm'i içermeyebilir. Kurmak için komutlar:

$ ./configure

$ make
# make install

# ldconfig

MySQL

MySQL nedir?

MySQL çok hızlı, güçlü ve yönetimi çok hoş bir veritabanıdır.

Özellikle çok okuma yapılıp az yazma yapılan web uygulamaları için, MySQL birinci seçimdir. Hemde en yeni versiyonu iş(transaction) yeteneğine sahiptir. Veritabanına çok fazla veri yazacak bir Web uygulaması planlıyorsanız sizin projeniz için PostgreSQL bölümünde kurulumunu göreceğimiz PostgreSQL daha uygun olabilir.

Eğer PHP'ye MySQL desteği verirseniz, PHP derlemek için MySQL'den C-API 'ye ihtiyaç var. Eğer mod_authmysql'de kullanmak istiyorsanız, mod_auth_mysql bölümüne bakınız.

Kaynak paketini indirin

Adres: http://www.mysql.com/downloads/

Derleme ve Kurulum

$ cd /usr/local
$ tar -xvzf mysql-3.23.55.tar.gz
$ cd mysql-3.23.55

$ ./configure \
--prefix=/usr/local/mysql \
--enable-assembler \
--with-innodb \
--without-debug

$ make
# make install

# /usr/local/mysql/bin/mysql_install_db
# echo /usr/local/mysql/lib/mysql >> /etc/ld.so.conf
# ldconfig

Güvenli bir geliştirme için MySQL sisteminize MySQL kullanıcısı ekleyin.

# chown -R mysql /usr/local/mysql/var

MySQL'i başlangıçta otomatik olarak başlatmak için, /usr/local/mysql/share/mysql/mysql.server/etc/init.d/ altına veya başlatma betikleriniz neredeyse oraya kopyalayın. Ana çalışma seviyesi dizininde uygun bir sembolik bağ oluşturun:

# cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/

# ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/S20mysql
# ln -s /etc/init.d/mysql.server /etc/init.d/rc3.d/K20mysql

MySQL güvenliği

Bu bölüm seçimliktir ve MySQL'in yerel sunucu IP'sine nasıl bağlanacağını gösterir.

MySQL'i 127.0.0.1 geridönüş arayüzüne bağlamanızı öneririm. Böylece MySQL'e ağ yoluyla kimse bağlanamaz. Ancak tabii ki bu durumda MySQL ve web sunucu aynı makinada çalışmalıdırlar.

/etc/init.d/mysql.server dosyasını açın ve 107. satırı aşağıdaki gibi düzenleyin:

Orijinal satır:

$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file&

Değişmiş hali:

$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file \
--bind-address=127.0.0.1& 1

1

Burada hangi arayüzün MySQL'e bağlanması gerektiğini tanımlayabilirsiniz.

Seçenek olarak MySQL'in bütün ağ işlevlerini devre dışı bırakabilirsiniz:

$bindir/safe_mysqld --datadir=$datadir --pid-file=$pid_file \
--skip-networking &

mm kurulumu

mm nedir?

 

MM kütüphanesi Unix platformu altında çatallanan işler arasında paylaşımlı belleğin kullanımını basitleştiren 2 katmanlı soyutlama kütüphanesidir. Birinci katmanda paylaşımlı bellek parçasıyla ilgilenildiğinde, bütün platform bağımlı uygulama ayrıntılarını gizler. İkinci katmanda, paylaşımlı bellek parçasında veri yapıları ile çalışmak için yüksek seviyeli malloc tarzı bir arayüz sağlar.

 
--www.engelschall.com 

Unix programcılarının paylaşımlı belleğe (shm) kolay erişimini sağlayan genel bir kütüphanedir. PHP ve mod_ssl gibi birçok ürün tarafından kullanılır.

Kaynak paketini indirin

Adres: ftp://ftp.ossp.org/pkg/lib/mm/mm-1.2.2.tar.gz

Derleme ve Kurulum

$ cd /usr/local

$ tar -xvzf mm-1.2.2.tar.gz

$ cd mm-1.2.2

$ ./configure
$ make
$ make test
# make install

# ldconfig



[15] Bu RPM php için gereken başlık dosyalarını içerir.

[16] Sadece, eğer PHP CVS ağacından oluşturuluyorsa gerekiyor.