13 Mart 2017 Pazartesi

Digitalocean CentOS 7 VPS'e Apache, PHP 7, SQL ve phpMyAdmin Kurulumu

Digitalocean gayet uygun fiyatlar karşılığı verdiği başarılı VPS hizmetiyle ülkemizde fahiş fiyatlara yetersiz hizmet veren VPS ve hosting firmalarının karşısına güvenilir bir alternatif olarak çıkıyor. Ubuntu, FreeBSD, Debian, CentOS, Fedora ve CoreOS işletim sistemleri yüklü teslim alabileceğimiz Droplet olarak tabir edilen Digitalocean VPS'lerini dilersek Ubuntu üzerinde NodeJS, Ruby On Rails, Drupal, Wordpress kurulu olarak da kullanmaya başlayabiliyoruz. Biz ise bugün CentOS 7.3 x64 kurulu bir Digitalocean Droplet'a Apache, PHP 7, SQL ve phpMyAdmin Kurulumu yapacağız.

Digitalocean hesabınızı henüz almadıysanız, kayıt olmak için TIKLAYIN. Digitalocean sizden ilk kayıt esnasında kredi kartı bilgilerinizi isteyecek ancak bundan henüz bir meblağ çekilmeyecek. Login olduktan sonra Create Droplet diyerek devam ediyoruz.


Create Button


Droplet Image'ı seçiminde karşımıza çıkan işletim sistemi dağıtımları arasından CentOS versiyon 7.3'ü seçerek ilerliyoruz. Aynı bölümde yer alan "One-click Apps" altından da NodeJS, Ruby On Rails, Drupal, Wordpress ve benzeri yüklü halde kullanmaya başlayabileceğimiz Droplet tercihlerini yapabiliyoruz. Biz bu seferlik CentOS üzerinde çalışan, olabildiğince hızlı ve pratik bir şekilde kullanıma hazır hale getirebileceğimiz PHP ve MYSQL destekli bir web serverı siber güvenlik şartlarını gözetmeden kurmakla yetineceğiz.


Droplet Image Selection

Centos 7'yi seçip bir ileri safhaya geçtiğimizde ihtiyaçlarımıza ve bütçemize göre Droplet'ın imkanlarını belirleyip bir tercih yapmamız istenecek. 1GB vRAM, 1vCPU, 30 GB SSD Disk ve 2TB Transfer imkanı sağlayan 10 dolarlık Droplet çözümünü işaretleyerek kuruluma devam edeceğiz. 


Size your Droplet


Datacenter lokasyonu seçmemiz istendiğinde de Türkiye'den erişim için en iyi sonuç verebilecek lokasyonlardan Amsterdam 3'ü seçiyoruz, SSH key ekleme kısmını geçerek, dropletımızı da varsayılan ismiyle bırakarak oluşturuyor ve bir an önce dropleta bağlanıp kullanıma hazır hale getirmek için kolları sıvıyoruz. Android kullanıcıları ConnectBot, PC kullanıcıları da PuTTY ile Droplet'a bağlanabilir. SSH Client'e bağlandıktan sonra gireceğimiz kodları ve komutları web tarayıcınızdan satır halinde kopyalayabilir, PuTTY'e bir sağ tıklamayla kolayca yapıştırabilirsiniz.




PuTTY'e Droplet IP adresini girdikten sonra bağlantıyı kuruyoruz. root olarak giriş yapmak için Digitalocean'a üye olurken verdiğimiz mail adresimize gelen mailde yer alan şifreyi kullanıyoruz ve sistem bizden yeni bir root şifresi belirlememizi istiyor. Ardından root olarak oturum açtığımız sanal sunucumuzda CentOS ile başbaşa kalıyoruz.



Centos 7'ye gelen son güncellemeleri almak için konsola "yum update" yazıp güncellemelerin tamamlanmasını bekliyoruz ve ardından yine CentOS'un paket program yöneticisi olan yum'u kullanarak Apache web server'ı kurmak için konsola girişiyoruz. 

# yum update # yum install httpd


Apache'yi çalışır hale getirmek için httpd.service'ı başlatıyoruz.

# systemctl start httpd.service
Bu noktadan sonra web tarayıcımızla http://DROPLET_IP_ADRESI/'ne göz attığımızda bizi Apache'nin test sayfası karşılıyor ve buradan da web server kurulumunu başarıyla tamamladığımızı anlıyoruz.

CentOS 7 Apache default



Unutmadan, sunucumuzun her yeniden açılışında httpd.service'in boot sırasında çalışması için gerekli konfigürasyonu da yapıyoruz.

# systemctl enable httpd.service
Centos 7'de önceki sürümlerin aksine MYSQL yerine MYSQL'in kurucularından Michael Widenius tarafından geliştirilen bir MYSQL fork'u olan MariaDB destekleniyor. Biz de sistemimize MariaDB kuruyoruz.

# yum install mariadb-server mariadb

Digitalocean'ın internet çıkış hızı o kadar tatmin edici ki, kişisel bilgisayarımızda yaptığımız kurulumlarda kolay göremeyeceğimiz hızlarda downloadlar göz açıp kapayıncaya kadar bitiveriyor. MariaDB kurulumundan sonra MariaDB'i çalıştırmak için yine gerekeni yapıyoruz.

# systemctl start mariadb
MariaDB'yi başlatmadan önce yapmamız gereken ufak konfigürasyonları bizim için halledecek olan bir scripti çalıştırmamız gerekiyor. 

# mysql_secure_installation


Enter current password for root (enter for none): talebini enter'a basarak geçiyor ve veritabanı root kullanıcısı için bir yeni parola belirliyoruz. Bunun ardından da Apache için de yaptığımız gibi boot sırasında mariadb'yi başlatacak şekilde sisteme service bilgisini bildiriyoruz.

# systemctl enable mariadb.service
Sıra geldi PHP kurulumuna. Centos 7'nin default repositoryleri kullanıcıya PHP 5'i sunuyor. PHP 7 kurmak için Extra Packages for Enterprise Linux(EPEL), REMI  gibi paket depolarından birini sisteme tanıtarak, PHP 7 kurulumunu bu repositoryler üzerinden gerçekleştirmek gerekiyor. İleride kullanabileceğimiz birkaç depoyu sisteme tanıtarak devam ediyoruz.

# yum install epel-release
# rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# rpm -Uvh http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
PHP 7'yi de yum vasıtasıyla kuruyor ve PHP 7 ile ilgili diğer paketlere/modüllere göz atıyoruz. yum search ile aradığımız her pakedin adı ve kısa bilgi notuna ulaşabiliyoruz.  Daha ayrıntılı bilgi için "yum info" kullanılabilir.

# yum install php70w
# yum search php70w
# yum info php70w
PHP 7 ile birlikte kurmak isteyebileceğimiz modülleri de "yum install" kullanarak yüklüyoruz.

# yum install php70w-mysql php70w-xml php70w-soap php70w-xmlrpc 
# yum install php70w-mbstring php70w-json php70w-gd php70w-mcrypt
phpMyAdmin kurulumuna geçiyoruz.


# yum install phpmyadmin
phpMyAdmin kurulumundan sonra yapacağımız bir iki konfigürasyon dosyası düzenlemesi için güzel ve işlevli bir *nix editörü olan nano'yu kuruyoruz.

# yum install nano
phpMyAdmin'in erişim izinlerini düzenlemek için phpMyAdmin.conf'u nano ile açıyoruz.


# nano /etc/httpd/conf.d/phpMyAdmin.conf

ifmodule mod_authz_core.c ile başlayan 14.satırdan itibaren aşağıdaki düzenlemeyi yapıyoruz ve CTRL-X'e basarak (ardından Y ve Enter) phpMyAdmin konfigürasyon dosyasını kapatarak editörden çıkıyoruz.







# systemctl restart httpd
Artık PHP 7 ve SQL destekli bir kurulu web serverımız var. Web tarayıcımızdan http://DROPLET_IP/phpMyAdmin adresini görüntülemesini istediğimiz takdirde, phpMyAdmin'i kurulum esnasında belirlediğimiz veritabanı root şifresiyle açabiliyoruz.



Son olarak sistemimize FTP erişimini de sağlamak için "vsftpd" yi kuralım.

# yum install vsftpd
# systemctl enable vsftpd

FTP ile daha güvenli erişim sağlamak için dilerseniz vsftpd konfigürasyonunuzu elden geçirebilirsiniz. Ancak bu işlemin ardından vsftpd service'in yeniden başlatılması gerektiğini de unutmayın.

# nano /etc/vsftpd/vsftpd.conf
# systemctl restart vsftpd
Artık Filezilla gibi herhangi bir FTP istemcisi üzerinden host olarak sftp://droplet ip'nizi, kullanıcı olarak root'u ve şifre olarak da root şifrenizi girer girmez dosyalarınıza erişebileceksiniz. Yine de başka bir kullanıcı hesabı yaratarak onun üzerinden ftp erişimi sağlamanız çok daha sağlıklı olacaktır.



Centos base bir VPS üzerinde kolay erişilebilir, stabil ve hızlı bir deneyimi uygun bir bedel karşılığında satın almak için Digitalocean oldukça ideal. Burada kabataslak olarak yaptığımız kurulum güvenli ve stabil bir web server kurulumu için yeterli değil ancak konuya meraklı olup da bu işin üzerine gitmek isteyenler ve yeni başlayanlar için ilham verici, faydalı olabileceğini düşünüyorum.

1 yorum:


  1. DigitalOcean'a PHP yığını kurmanın daha kolay bir yolu Cloudways platformunu kullanmaktır. Bu platform, DO sunucusunun başlatılmasını hızlı ve kolaydır. Sadece sunucu kaynaklarını ve veri merkezini seçin ve başlat'ı tıklayın. Sadece birkaç dakika içinde, sunucunuz OS, yığın ve PHP'nin yüklü olduğu halde hazır olacak.

    YanıtlaSil