Kategori arşivi: Centos

centos işletim sistemi hakkında bilgiler, centos yapılandırma örnekleri, centos güvenlik önlemleri ve performans iyileştirmeleri, güncel haberler

CentOS 7’de Tomcat 9 nasıl kurulur?

Bu ay java ve ekipmanları ile çok ilgilendiğimiz için Tomcat 9 kurulumu ile devam ediyoruz.

Tomcat, Java Servlet, JavaServer Pagesve Java WebSocket teknolojileri için açık kaynaklı bir uygulamadır.

OpenJDK’yı Yükleyelim

Tomcat 9, Java SE 8 veya daha yeni bir sürümünü desteklemektedir. Açık kaynak kodlu olan OpenJDK 8 Sürümünü sistemimize dahil edelim.

sudo yum install java-1.8.0-openjdk-devel

OpenJDK yerine kurulumunuzda Oracle Java’yı tercih ederseniz CentOS 7’de Java nasıl kurulur makalemize göz atabilirsiniz.

Tomcat Kullanıcısının Oluşturulması

Tomcat’i root kullanıcısı olarak kullanmak bir güvenlik sorunu oluşturur ve başımıza daha sonradan sorun çıkartabilir. Bunun yerine bir tomcat kullanıcısı oluşturmak işimize yarayacaktır.

sudo useradd -m -U -d /var/tomcat -s /bin/false tomcat

Dizin olarakta gördüğünüz gibi /var/tomcat tercih ettik.

Tomcat 9.0.x’in en son sürümünü Tomcat indirme sayfasından indirelim.

wget https://www-eu.apache.org/dist/tomcat/tomcat-9/

Başarılı bir şekilde indirdiğimiz tomcatımızı dosyasından çıkartıyoruz.

tar -xf apache-tomcat-*.tar.gz

Kullanacağımız dizine taşıyalım

sudo mv apache-tomcat-9.0.13 /var/tomcat/

Belirli aralıklarla güncelleyeceğimiz içinde linkleme işlemlerini gerçekleştirelim.

sudo ln -s /var/tomcat/apache-tomcat-9.0.13 /var/tomcat/latest

Önceden tanımladığımız tomcat kullanıcısı ise bu işlemleri gerçekleştirebilmek için dizine tanımlanması gerekmektedir.

sudo chown -R tomcat: /var/tomcat

tomcat /var/tomcat/latest/bin/ içerisindeki tüm dosyaların çalıştırılabilir hale getirilmesi işlemimizi yapalım.

sudo chmod +x /var/tomcat/latest/bin/*.sh

İşlemimiz buraya kadar şimdi tomcat 9’un sistem tarafından çalıştırılması için kullanılan dosyayı düzenlemeye geldi bu işlemi /etc/systemd/system/tomcat.service yolu takip ederek ve favori metin editörünüz ile gerçekleştirebilirsiniz.

Dosyanın içerisinde yok demeyin olay zaten burada gereken dosyayı sizin oluşturmanız. Sunucunun herhangi istenmeyen yeniden başlatma durumlarında başınız ağrımasın.

[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/var/tomcat/latest"
Environment="CATALINA_HOME=/var/tomcat/latest"
Environment="CATALINA_PID=/var/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/var/tomcat/latest/bin/startup.sh
ExecStop=/var/tomcat/latest/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

şimdi sisteme yeni bir servis oluşturduğumuzu haber verelim.

sudo systemctl daemon-reload

Tomcat 9 servisimizi başlatalım ve sistemimizin başlangıcında otomatik olarak çalışmasını sağlayalım

sudo systemctl enable tomcat
sudo systemctl start tomcat

Güvenlik Duvarı ayarları

Eğer servise dışarıdan erişmek isterseniz 8080 numaralı porta erişim izni vermeyi unutmayın bunun için aşağıdaki komutları kullanabilirsiniz.

sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload

Herhangi bir yük dengeleme işlemi veya ters proxy işlemi uygulanacak ise bahsi geçen 8080 portunun dışarıya erişiminin olmasına gerek yoktur.

Tomcat Web Yönetim Arayüzünü Yapılandırma

Tomcat kullanıcıları ve rolleri, tomcat-users.xml dosyasında tanımlanmıştır. Gerekli ayarlamalarımızı aşağıdaki komut aracılığı ile dosyayı açarak yapalım

sudo nano /var/tomcat/latest/conf/tomcat-users.xml

Kullanıcı alanına yetkili kullanıcımızı tanımlayacağımız zaman tomcat-users alanı içerisine aşağıdaki satırlar eklenmelidir.

<tomcat-users>
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="Mertcan" password="Mertcan123" roles="admin-gui,manager-gui"/>
</tomcat-users>

Varsayılan olarak Tomcat web yönetim arayüzü, yalnızca localhost’tan erişime izin verecek şekilde yapılandırılmıştır. Web arayüzüne uzak bir IP’den veya tavsiye edilmeyen herhangi bir şekilde erişebilmek istiyorsanız context.xml dosyasını düzenlemeniz gerekmektedir.

sudo nano /var/tomcat/latest/webapps/manager/META-INF/context.xml

IP adresi üzerinden erişimi aşağıdaki gibi aktif hale getirebilirsiniz.

<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
</Context>

Değişikliklerin etkili olması için Tomcat servisini yeniden başlatın

sudo systemctl restart tomcat

Web arayüze tarayıcınız aracılığı ile http://<IP>:8080 adresi aracılığı ile erişebilirsiniz. 

tomcat 9 gorseli

CentOS 7’de Nginx ile phpMyAdmin Nasıl Kurulur

phpMyAdmin, web tabanlı bir arayüz üzerinden MySQL ve MariaDB sunucularını yönetmek için açık kaynaklı PHP tabanlı bir araçtır.

phpMyAdmin, MySQL veritabanlarıyla etkileşime girmenize, kullanıcı hesaplarını ve ayrıcalıkları yönetmenize, SQL sorgularını çalıştırmanıza, çeşitli veri formatlarında veri alıp vermenize ve çok daha fazlasını yapmanıza imkan tanır.

Kuruluma başlamadan önce LEMP kurulumunu gerçekleştirmeniz gerekmektedir. Centos 7 Üzerine (LEMP) Kurulumu 

PhpMyAdmin’i CentOS’a Yüklemek

phpMyAdmin, EPEL deposunda bulunur. EPEL etkinleştirilmiş değilseniz, aşağıdaki komutları ile bunu kolay bir şekilde gerçekleştirebilirsiniz.

sudo yum install epel-release

Ardından sistemimize gerekli olan paketi dahil edebiliriz.

sudo yum install phpmyadmin

PhpMyAdmin’i yüklemeden önce sisteminizde Nginx ve PHP 7 yüklü olduğundan emin olun.

Bu aşamadan sonra /etc/phpMyAdmin dizininin grup sahipliğini nginx olarak değiştirin.

sudo chgrp -R nginx /etc/phpMyAdmin

Nginx ve phpMyAdmin’i Yapılandırma

Nginx’i phpMyAdmin dosyalarını sunacak şekilde nasıl yapılandırmamız gerekiyor. Alan adınız sunucu ayarlamalarında zaten PHP isteklerini sunmak için ayarlanmışsa, phpMyAdmin kurulum dosyalarından bulunduğu dizine bir dosya oluşturuyoruz.

sudo nano /etc/nginx/conf/phpMyAdmin.conf

İçerisine aşağıda bahsi geçen satırları ekliyoruz

location /phpMyAdmin {
       root /usr/share/;
       index index.php index.html index.htm;
       location ~ ^/phpMyAdmin/(.+\.php)$ {
               try_files $uri =404;
               root /usr/share/;
               fastcgi_pass unix:/run/php-fpm/www.sock;
               fastcgi_index index.php;
               fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
               include /etc/nginx/fastcgi_params;
       }
       location ~* ^/phpMyAdmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
               root /usr/share/;
       }
}
location /phpmyadmin {
    rewrite ^/* /phpMyAdmin last;
}

Mevcut alan adlarınızdan hangisinde çalışmasını istiyorsanız. Direk olarak o alan adının bulunduğu yapılandırma dosyasına bu satırları include conf/phpMyAdmin.conf; ekliyorsunuz.

Kurulumumuz tamamlandı artık giriş yapmak için gerekli olan her şeye sahibiz. Direk olarak aşağıdaki yolu takip ediyoruz ve panelimize giriş yapıyoruz.

http(s)://<alan-adiniz>/phpmyadmin

Yönetici kullanıcı girişi kimlik bilgilerini girin artık paneldesiniz

phpmyadmin admin girisi

CentOS 7’de Apache Maven Nasıl Kurulur?

Apache Maven, öncelikli olarak Java projeleri için kullanılan ücretsiz ve açık kaynaklı bir proje yönetimi ve anlama aracıdır. Maven esas olarak projelerde yapılandırma ayrıntıları, projenin bağımlılıkları vb. bilgileri içeren bir XML dosyası ve IDE bağımlılıklarını ortadan kaldıran bir araçtır.

Bu makalemde, size CentOS 7’de Apache Maven‘i kurmak için iki farklı yol göstermek istiyorum.

Resmi CentOS depolarında, yum paket yöneticisi ile kurulabilen Maven paketi mevcuttur. Ancak depolarda bulunan versiyon Maven’in en son sürümü olmayabilir.(ki genelde olmaz)

Maven’in en son sürümünü yüklemek için, resmi web sitesinden indirmeyi tercih edeceğiz bu makalenin ikinci bölümünde verilen talimatlarla bu şekilde kurabileceksiniz.

Apache Maven’i CentOS Paket Yöneticisi Yum İle Yüklemek

Yum kullanarak CentOS 7 üzerine Maven kurulumumuzu yapalım. Kurulumumuzu sudo aracılığı ile yetkilendirilmiş bir şekilde yapacağımızı unutmayalım.

sudo yum install maven

Yüklemeyi mvn -version komutunu kullanarak doğrulayın, çıktısı aşağıdaki gibi olmalıdır.

Apache Maven 3.0.5 (Red Hat 3.0.5-17)
Maven home: /usr/share/maven
Java version: 1.8.0_191, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el7_5.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.3.2.el7.x86_64", arch: "amd64", family: "unix"

Kurulumumuz tamamlandı. Maven artık CentOS sisteminize yüklendi ve Maveni kullanmaya başlayabilirsiniz.

Apache Maven’in Son Sürümünün Kurulması

En son yayınlanmış olan Apache Maven sürümünün CentOS 7‘ye nasıl yükleneceği ile ilgili talimatlarımız ise şu şekildedir.

Apache Maven’in en son sürümünü resmi web sitesinden indiriyoruz.

wget https://downloads.apache.org/maven/maven-3/ -P /tmp
sudo tar xf /tmp/apache-maven-3.6.0.tar.gz -C /opt
sudo ln -s /opt/apache-maven-3.6.0 /opt/maven

Ardından sistemimize OpenJDK dahil ediyoruz. Kurmamız gereken paketimiz ise şu şekilde

java-1.8.0-openjdk

Kurulum tamamlandıktan sonra, kontrollerimizi gerçekleştiriyoruz.

java -version

Çıktısı şu şekilde olmalı

openjdk version "1.8.0_191"
OpenJDK Runtime Environment (build 1.8.0_191-b12)
OpenJDK 64-Bit Server VM (build 25.191-b12, mixed mode)

OpenJDK yerine kurulumunuzda Oracle Java’yı tercih ederseniz CentOS 7’de Java nasıl kurulur makalemize göz atabilirsiniz.

Ortam Değişkenlerinin Tanımlanması

Kurulumu kısmen tamamladığımızda, ortam değişkenlerini kurmamız gerekecek. Popüler metin düzenleyicinizi açın ve /etc/profile.d/ dizininin içinde maven.sh adlı yeni bir dosya oluşturun.

sudo nano /etc/profile.d/maven.sh

Aşağıdaki satırları dosyanın içerisine dahil edin.

export JAVA_HOME=/usr/lib/jvm/jre-openjdk
export M2_HOME=/opt/maven
export MAVEN_HOME=/opt/maven
export PATH=${M2_HOME}/bin:${PATH}

Dosyayı kaydedin ve kapatın. Bu betik işlemlerin başlangıcında çalıştırılacak bunun için ayarlamalarımızı yapalım.

sudo chmod +x /etc/profile.d/maven.sh
source /etc/profile.d/maven.sh

Kurulumu Doğrulayalım

Yüklemeyi mvn -version komutunu kullanarak doğrulayın, çıktısı aşağıdaki gibi olmalıdır.

Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T18:41:47Z)
Maven home: /opt/maven
Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.191.b12-0.el7_5.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-862.3.2.el7.x86_64", arch: "amd64", family: "unix"

Kurulum bu kadar. Maven’in en son sürümü CentOS sisteminize yüklendi.

CentOS 7’de Java Nasıl Kurulur

By makalemde sizlere, Java’yı CentOS 7‘ye nasıl yükleyeceğinizi anlatacağım. Java, farklı türde uygulamalar ve sistemler oluşturmak için kullanılan en popüler programlama dillerinden biridir.

Java’da Bulunan Varyasyonlar

Java, üç farklı sürümü beraberinde sunmaktadır bunlar sırasıyla, Standard Edition (SE), Enterprise Edition (EE) ve Micro Edition (ME) olarak dağıtılmaktadır.

Bu yazıda kullanacağımız varyasyonumuz ise, Java SE (Standard Edition) olacak.

CentOS 7, Java Runtime Environment (JRE) ve Java Geliştirme Seti’nde (JDK) olmak üzere iki farklı Java yükleme paketini depolarında barındırır. Sadece Java programlarını çalıştırmak istiyorsanız, Java Runtime Environment’ı içeren JRE’ye ihtiyacınız var, eğer Java geliştiricisiyseniz, JRE’yi ve geliştirme/hata ayıklama araçlarını ve kütüphanelerini içeren JDK’ya ihtiyacınız olacak.

Ayrıca, Java’nın birkaç ek ticari özelliğe sahip olması dışında, OpenJDK ile aralarında neredeyse hiçbir fark yoktur.

Hangi Java uygulamasının ve sürümünün yükleneceğinden emin değilseniz, genel öneri Java’nın mevcut LTS sürümü olan OpenJDK 8 JDK olacaktır.

OpenJDK’nın Yüklenmesi

OpenJDK, Java Platformunun açık kaynaklı uygulamasıdır, Kurulumumuz her zamanki gibi oldukça kolaydır.

OpenJDK 8 JDK’nın Yüklenmesi

Önerilen mevcut sürümü çok basit bir şekilde sistemimize dahil ediyoruz.

sudo yum install java-1.8.0-openjdk-devel

OpenJDK 8 JRE’nin Yüklenmesi

Aşağıdaki komut aracılığı ile ihtiyacımız olan OpenJDK JRE’yi sistemimize dahil ediyoruz.

sudo yum install java-1.8.0-openjdk

OpenJDK 7 JDK’nın Yüklenmesi

Uygulamanız için gerekiyorsa, eski Java SE 7‘nin CentOS 7 versiyonunu sistemimize dahil edeceğiz, aşağıdaki komutu kullanarak OpenJDK 7 JDK paketini kurabilirsiniz

sudo yum install java-1.7.0-openjdk-devel

OpenJDK 7 JRE’nin Yüklenmesi

Aşağıdaki komut aracılığı ile OpenJDK 7 yi kuruyoruz

sudo yum install java-1.7.0-openjdk

Oracle Java’nın Yüklenmesi

Oracle paketleri yalnızca resmi web sitelerinden indirilebiliyor. Bunun için aşağıdaki adımları eksiksiz bir şekilde yapmalıyız. Çünkü lisans ile indirebileceğiz

sudo yum install curl

Ardından son sürüm olan Oracle Java 9’u resmi web sitesi aracılığı ile indireceğiz. Daha sonra şu şekilde bir komuta dönüşecek

curl -L -b "oraclelicense=licenseee" -O http://download.oracle.com/otn-pub/java/jdk/9.0.4+11/c2214751936b451cb072cc82f959a63f/jre-9.0.4_linux-x64_bin.rpm
sudo yum localinstall jre-9.0.4_linux-x64_bin.rpm

Geliştiriciyseniz sisteme JDK‘yı dahil etmemiz gerekiyor. Onuda şu şekilde tedarik ediyoruz.

curl -L -b "oraclelicense=licenseee" -O http://download.oracle.com/otn-pub/java/jdk/9.0.4+11/c2214751936b451cb072cc82f959a63f/jdk-9.0.4_linux-x64_bin.rpm
sudo yum localinstall jdk-9.0.4_linux-x64_bin.rpm

Varsayılan Sürümün Ayarlanması

Birden fazla java sürümünü sisteminizde barındırıyorsanız. Sistemin varsayılan olarak kullanacağı sürümüdebelirtmeniz gerekiyor.

sudo alternatives --config java

Çıktımız şu şekilde olabilir

There are 4 programs which provide 'java'.

  Selection    Command
-----------------------------------------------
   1           /usr/java/jdk1.8.0_162/jre/bin/java
   2           java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.161-0.b14.el7_4.x86_64/jre/bin/java)
   3           java-1.7.0-openjdk.x86_64 (/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.171-2.6.13.0.el7_4.x86_64/jre/bin/java)
*+ 4           /usr/java/jdk-9.0.4/bin/java

Enter to keep the current selection[+], or type selection number:

İstediğiniz sürümü seçip, Enter tuşuna basmanız yeterli

Centos 7 Otomatik Güncelleştirmeleri Aktif Etmek

Linux sistemlerde son zamanlarda ortaya çıkan bir otomatik güncelleme furyası var Centos/RHEL ailesi bunu uzun zamandır yapıyordu zaten. Kurumsal çözümler için oldukça güzel bir durum her paketin anında güncellenmesi yerine sadece güvenlik güncelleştirmelerinin geçilmesi yeter

Kritik çalışan ve sorun olması istenmeyen durumlar için çoğu zaman güvenlik güncelleştirmeleri bile göz ardı edilir. Çalışıyorsa dokunma mantığı bu gibi durumlar için risk oluşturur.

Gelin hep beraber Centos/RHEL ailesinde bu durumu nasıl çözebileceğiz bir bakalım

İlk önce yum-cron adlı paketi sistemimize dahil etmemiz gerekiyor. Bu paket bize gerektiği zaman güncellemeyi otomatik olarak yüklemesini sağlayacak

yum -y install yum-cron

Bu komut, yum-cron paketini kısa bir sürede yükleyecektir, şimdi yapılandırma zamanı geldi, varsayılan yapılandırma dosyası /etc/yum/yum-cron.conf dır.

#  What kind of update to use:
# default                            = yum upgrade
# security                           = yum --security upgrade
# security-severity:Critical         = yum --sec-severity=Critical upgrade
# minimal                            = yum --bugfix upgrade-minimal
# minimal-security                   = yum --security upgrade-minimal
# minimal-security-severity:Critical =  --sec-severity=Critical upgrade-minimal
update_cmd = default

# Whether a message should be emitted when updates are available,
# were downloaded, or applied.
update_messages = yes

# Whether updates should be downloaded when they are available.
download_updates = yes

# Whether updates should be applied when they are available.  Note
# that download_updates must also be yes for the update to be applied.
apply_updates = no

# Maximum amout of time to randomly sleep, in minutes.  The program
# will sleep for a random amount of time between 0 and random_sleep
# minutes before running.  This is useful for e.g. staggering the
# times that multiple systems will access update servers.  If
# random_sleep is 0 or negative, the program will run immediately.
# 6*60 = 360
random_sleep = 360

Şimdi bu default yapılandırma dosyamız içerisinde yapılacak olanları belirleyebiliyoruz. Biz sadece güvenlik güncelleştirmelerini yapmak istiyoruz. Bunun aynı zamanda otomatik olmasınıda istiyoruz.

İlk olarak bence en can alıcı noktamız, CENTOS/RHEL 6 serisinde hangi tür güncellemenin otomatik olarak yapılabileceğini seçemiyorduk, CENTOS/RHEL 7’de bu konu çözülmüş ve bir çok seçenekte yukardaki gibi getirilmiş.

Şimdi geldik yapılandırmayı yapmaya güvenlik güncelleştirmeleri için aşağıdaki değişikliği default yapılandırma dosyası üzerinde uygulayınız.

update_cmd = security-severity:Critical

Bu size sistem üzerinde tüm güvenlik güncelleştirmelerini değil sadece kritik olanları getireceği anlamına gelir. Böylelikle sistemde istenmeyen durumların önüne geçebilirsiniz.

Ne demiştik kritik servislerin çalışmasına engel olmayacak şekilde güvenlik yamalarını yapmamız önemli demiştik. Yeniden başlaması uzun sürecek servislerin yeniden başlatılması önerilmez. Bu yüzden aşağıdaki parametreyi kullanmanız zorunludur.

exclude=kernel* mysql*

Bu uygulamalara gelecek olası güvenlik güncelleştirmelerini yapmak için ise yoğunluğun az olduğu, kesintinin sisteminizi etkilemeyeceği bir zamanı seçip güncellemeleri yapabilirsiniz. (Örneğin gece 03:00 gibi)

Aynı zamanda bu güncellemelerin otomatik olarak yapılmasınıda sağlayabilirsiniz.

apply_updates = yes

Tabi ben gözümle göreceğim illaki derseniz bu seçeneği no olarak ayarlayın sadece size mail yada sunucuya bağlandığınızda bir mesaj olarak kritik güncelleştirmeler var bak yap yoksa sıkıntı çıkar diye uyaracak

Tabi mail ile size ulaşabilmesi için aşağıdaki ayarlarında aynı yapılandırma dosyasının en altına eklenmesi gerekiyor.

[email]
email_from = noreply@mertcangokgoz.com
email_to = admin@mertcangokgoz.com
email_host = smtp.mertcangokgoz.com

Kayıt edip çıkış yapıyorsunuz bundan sonra güncelleme geldiğinde ve güncellemelerin durumları hakkında hem size bildiriyor hemde yaptıklarına dair bir bildirimde atmayı ihmal etmiyor.

Servisin çalıştığını ise systemctl status yum-cron.service komutu aracılığı ile öğrenebilirsiniz. Daha yeni kurduysanız ve ayarlamarı yeni yaptıysanız. stopped olarak görmeniz gayet normal bu durumda systemctl start yum-cron.service komutu ile servisi başlatabilirsiniz.

CentOS’da DHCP kullanırken resolv.conf da Farklı Nameserver Kullanmak

Bir ifcfg ağ yapılandırma dosyası içinde DHCP kullanırken, DHCP sunucusu tarafından atanan ad sunucusu yerine farklı bir ad sunucusu belirtmek isteyebilirsiniz. Bu gibi durumlarda

PEERDNS, DNS1 ve DNS2 seçeneklerini kullanın.

DEVICE="em1"
BOOTPROTO="dhcp"
ONBOOT="yes"
TYPE="Ethernet"
PEERDNS="yes"
DNS1="8.8.8.8"
DNS2="8.8.4.4"

Her şeyin çalıştığını kontrol etmek için. Şu adımları izleyin

ifdown eth0;ifup eth0

grep ^nameserver /etc/resolv.conf komutunu verdiğinizde çıktının aşağıdaki gibi olması beklenir.

nameserver 8.8.8.8
nameserver 8.8.4.4

DHCP sunucusu tarafından sağlanan ad sunucularını kullanmak istiyorsanız ve /etc/resolv.conf dosyanızın içinde fazladan bir ad sunucusu belirtmek isterseniz, dhclient.conf seçeneklerinden faydalanabilirsiniz.

prepend domain-name-servers 8.8.4.4;

Centos 7 Üzerine PostgreSQL ile Ruby on Rails Kurulumu

Ruby on Rails (RoR) veya kısa adıyla “rails”, ruby’de MVC (Model-View-Controller) kavramını takip eden bir sunucu tarafı web uygulaması çerçevesidir. RoR açık kaynak kodlu MIT Lisansı altında yayınlandı. Rails, veritabanları, web hizmetleri ve web sayfaları için varsayılan yapılar sağlar. Rails yaygın olarak kullanılmaktadır ve bugüne kadar 3000’den fazla kişi Rails projesine kod eklemiştir Github, Airbnb, Soundcloud gibi Rails’e dayanan birçok web uygulaması bulunmaktadır.

Kurulum aşaması

yum install curl
curl -sSL https://rvm.io/mpapis.asc | gpg --import -
curl -sSL https://get.rvm.io | bash -s stable --ruby

Komutlar, önce gerekli paketleri (paket bağımlılıkları) yükleyecek ve en son kararlı RVM sürümünü indirip kuracaktır.

Şimdi, aşağıdaki komutu çalıştırarak RVM’yi kullanmaya başlayabiliriz

source /usr/local/rvm/scripts/rvm

Ruby Kurulumuna başlayalım

rvm get stable --autolibs=enable
rvm install ruby-2.3.1
rvm --default use ruby-2.3.1

Başarılı bir şekilde kuruldu ise aşağıdaki komut ile sürüm bilgisine bakabilirsiniz

ruby -v

Rails, assetleri derlemek için bir JavaScript’e ihtiyaç duyar. Bunun için NodeJS kurulumunu yapıyoruz.

curl -sL https://rpm.nodesource.com/setup_6.x | sudo -E bash -
yum -y install nodejs

Gem’i güncelleştirip yapılandırmasını yapalım sonuçta bir sunucu ve geliştirme ortamı kuruyoruz. Gereksizlerin kurulması işimize yaramaz sistem gemlerini güncellememiz yeterli

gem update --system
gem -v

.gemrc dosyasına aşağıdaki satırı ekleyerek her gem kurulum belgelerini yüklemeyi devre dışı bırakabilirsiniz. Sabit disk alanı kazandıracağından burada internet üzerinden belgeleri okumayı tercih edeceğiz. Ve unutulmamalıdır ki bu işlem isteğe bağlı bir işlemdir.

echo "gem: --no-document" >> ~/.gemrc

Tüm bu işlemleri başarılı bir şekilde geçtiğimize göre Ruby On Rails 5 kurulumuna geçebiliriz

gem install rails -v 5.0.0

Kurulum başarıyla tamamlandığında rails sürümünü kontrol etmeyi unutmuyoruz

rails -v

Rails Geliştirmek için PostgreSQL Veritabanı Ayarlamalarının yapılması

Bu adımda PostgreSQL’i rails’in geliştirilmesi için hazırlayacağız. Ruby on Rails, MySQL, SQLite (Varsayılan) ve PostgreSQL gibi birçok veritabanını desteklemektedir. Veritabanı olarak PostgreSQL’i kullanacağız.

yum -y install postgresql-server postgresql-devel postgresql-contrib

Şimdi veritabanı sunucusunu initdb komutu ile başlatmalıyız.

postgresql-setup initdb

Varsayılan olarak, CentOS sunucusunda PostgreSQL şifre tabanlı kimlik doğrulamasına kesinlikle izin vermez. RoR kurulumu için PostgreSQL yapılandırmasını bir şifre ile girişlere izin verecek şekilde düzenlememiz gerekiyor.

yum install nano
nano /var/lib/pgsql/data/pg_hba.conf

Kimlik doğrulama yöntemini md5 olarak değiştiriyoruz.

# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

ve servisi yeniden başlatıyoruz.

systemctl start postgresql

Yükleme tamamlandığında, su ile kabuk üzerinde postgres kullanıcısı olarak girin ve postgresql kabuğuna (psql) erişin.

su - postgres
psql

Aslında bu işlem tüm sistemler için aynı şifre tanımlaması yapmaktan başka bir işe yaramıyor.

password postgres
Enter new password:

Sonra, bu komutla rails geliştirilmesi için rails-dev adlı yeni bir rol oluşturun:

create role rails_dev with createdb login password 'admin123';

Benim şüphelerim var bana kuralları göster dostum diyorsan

du

Şimdi bir uygulama oluşturalım bakalım RoR çalışıyormu

rails komutu ile ilk uygulamamızı kolayca oluşturabiliriz. PostgreSQL’i varsayılan veritabanı olarak kullanarak yeni bir uygulama oluşturun.

rails new testcanisi -d postgresql

Bu komut, yeni bir dizin ‘testcanisi’ oluşturacak ve PostgreSQL veritabanına bağlanmak için rails tarafından gerekli olan “pg” gemini de içeren yeni bir gem yükleyecektir.

‘testcanisi’ dizinine gidin ve config dizininde database.yml dosyasını düzenleyin.

cd testcanisi/
nano config/database.yml

dosya içerisinde 32.satıra denk gelen kısımları yukarıda ayarladığımız şekilde değiştiriyoruz.

username: rails_dev
password: admin123
host: localhost
port: 5432

dosyayı kayıt edip editörden başarılı bir şekilde çıkış yapıyorsunuz. Ardından, veritabanını rails komutu ile oluşturun aynısı django tarafındada var bilenler bilirler

rails db:setup
rails db:migrate

Sonra rails sunucusunu aşağıdaki komutu kullanarak çalıştırın:

rails s -b >sunucu-ip> -p 8080

İp adresine baktığınızda karşınızda RoR’un kullandığı ön tanımlı sayfayı göreceksiniz ve onu gördüğünüzde kurulumu başarılı bir şekilde yaptığınızı anlayabilirsiniz.

Artık RoR uygulamaları geliştirebilir veya geliştirilmiş herhangi bir uygulamayı canlıya alabilirsiniz.

Centos Kloxo-MR Kontrol Panel Kurulumu

Kloxo-MR açık kaynak kodlu bir kontrol paneli’dir kullanımı diğer paneller gidi değildir biraz daha kolay bir yapıya sahiptir ve otomatik olarak LAMP kurmaktadır sizin önceden bir kurulum yapmanız gerekmez sunucunuz yeni oluşturduktan sonra komutları vererek kurulum aşamasına geçebilirsiniz. Centos 5.x ve 6.x desteği bulunmaktadır.

Özellikleri

  • Mail Sunucusu için ise sistemde özellikle Qmail toaster kullanılmış
  • Veritabanı sistemi için mysql veya mariaDB kullanabilme
  • Veritabanı yönetim sistemi için phpmyadmin, adminer, Mywebsql kullanabilme
  • DNS yönetimi için ise BIND yada djbdns kullanabilme imkanı
  • FTP sunucusu için pure-ftpd modülleri
  • Sistem için kurulmasa da olur bir kaç ek paket bunlar arasında ClamAV, Rkhunter ve Spamassassin bulunmaktadır
  • Webmail 3 adet bilinen mail yapısını destekler bunlar horald , Roundcube
  • Faturalama özelliği için ise Blesta ve AccountLAB gibi servislerden faydalanılmış

Panelin kurulumu centos üzerine oldukça basittir.herhangi bir derleme yapmanıza gerek yoktur. Kloxo-MR kurulumuna geçmeden önce sisteminizin güncel olup olmadığını bir kontrol etmeniz gerekiyor kurulacak paketler olabilir.

yum update -y

herhangi bir güncelleme yok ise Kloxo-MR nin ihtiyaç duyduğu bir kaç paketi kurmamız gerekiyor bunun için

yum install -y yum-utils yum-priorities vim-minimal subversion curl zip unzip yum install yum-utils yum-priorities vim-minimal subversion curl zip unzip

Paketlerimiz kurulduktan sonra asıl kontrol paneli kurulumuna geçebiliriz.Bize gerekli olan paketi indiriyoruz.

wget https://github.com/mustafaramadhan/kloxo/raw/rpms/release/neutral/noarch/mratwork-release-0.0.1-1.noarch.rpm --no-check-certificate

Belirtmemde fayda var normal Kloxo sürümünden farklı özelliklere sahiptir ve forklanmış bir sürümünü kullanacaksınız bilinen sorunlar giderilmiş ve eklemeler yapılmış. Asıl kurulum parametresine geçiyoruz.

yum install mratwork-release-0.0.1-1.noarch.rpm -y

daha sonra klasör değiştiriyoruz burada varsayılan klasör root olarak gözükeceğini varsayıyorum o yüzden ben ana dizine geçiyorum.

cd /

ve parametremizi giriyoruz.

yum update mratwork-* && yum install kloxomr7 -y

kurulum tamamlandıktan sonra bize kurulumun tamamlanması için şu komutu girmeniz gerekmektedir demekte bunu özellikle yapmanız gerekiyor yoksa panelimiz çalışmaz

kloxo-mrgorsel1

Bahsi geçen komutu yazdıktan sonra kurulum tamamlanıyor.

sh /script/upcp

Sitemizin İP adresini kullanarak panele giriş yapabiliriz. Port olarak ise 7777 tanımlamamız gerekiyor.

Ön tanımlı kullanıcı bilgilerimiz ise şu şekilde

  • Kullanıcı Adı : admin
  • Şifre : admin

https://ipadresimiz:7777 şeklinde panelimize ilk girişi yapıyoruz.

kloxo-mrloginscreen

ön tanımlı kullanıcı bilgileri ile giriş yaptıktan sonra sizi çok güzel bir arayüz karşılayacak daha sonra ise tüm ayarlarınızı bu panel yardımı ile yapabileceksiniz.

kloxo-mrmainpage

Kloxo-MR yeni yeni popüler olmaya başlasa da normal kloxo ya göre daha iyi olduğu bilinmektedir.Bazı özellikleri resmi kloxo sürümünde bulunmamaktadır.Hali hazırda geliştirilmeye devam edilen Kloxo-MR oldukça düşük miktarda ram kullanımı nedeniyle tercih edilebilir.

Ayrıca sistem içerisindeki istediğiniz hizmetleri durdurup,yeniden başlatma gibi özellikleri yerine getirebilirsiniz.Panel üzerinde bulunan Advanced sekmesi ile güvenlik ayarlarını yapabilirsiniz Kloxo-MR nin en önemli özelliklerinden bir tanesi de budur.

Centos 7 Üzerine SpeedTest Server Kurmak

Speedtest internet hızınızı test etmek için kullanabileceğiniz bir servis ama flash kullandığı için güvenliğimizi tehdit ediyor.Hal böyle olunca bende araştırma yaptım bu adamları kullanmadan nasıl test ederiz diye sonra fark ettim ki speedtest server kurabilme imkanımız var tabi gene flash kullanacak ama hiç değilse kendi sistemimizde olduğu için eskisi kadar riskli olmayacak(Eskisi derken biri %90 ise diğeri %70)

Kurulumda ihtiyacımız olanlar

  • Herhangi bir centos 7 işletim sistemli bilgisayar
  • Web Server için Apache ve PHP kurulumunu yapabilme yeteneği
  • Speedtest sitesinden indirmemiz için gerekli olan paketler

hepsini yapabileceğinizi varsayarak kurulum aşamasına geçelim oldukça basit bir şekilde yapacağız bunu yaparken de “yum” komutları havada uçuşacak. İlk olarak web sunucusu için gerekli paketleri kuralım aşağıdaki komutlar ile bu işlemi yapabilirsiniz.

yum update
yum install httpd
yum install php php-mysql php-gd php-mcrypt

Daha sonra adamların bize vermiş olduğu server dosyalarını indireceğiz fazla bir arayüze sahip değil isterseniz özelleştirebilirsiniz ama kişisel kullanım için yeterde artar

wget http://c.speedtest.net/mini/mini.zip

indirdiğimiz dosyayı sıkıştırılmış halinden çıkartıyoruz ve gerekli olan konuma kopyalıyoruz.

unzip mini.zip
cd mini

İçerisinde ne var ne yoksa bir güzel apachenin default olarak kullandığı klasöre paslıyoruz. bundan sonra gereken apachede

cp -rRfv mini /var/www/html/
cd /var/www/html/mini

İçerisine girdiğimizde index-php.html adında bir dosya var siz bunun ismini index.html olarak değiştirin. Komut ile yapmak isterseniz de

mv index-php.html index.html

Şimdi apacheyi başlatalım daha önceden başlatılmış ise bir restart atalım ki yaptıklarımız otursun yerine güzelce çalışsın ben yeni kurduğunuzu varsayarak apacheyi başlatıyorum.

systemctl start httpd

Kurulum sonrasında yapmanız gereken http://ipadresi/mini yada şeklinde giriş yapmak Flash isteyeceği için sisteminizde kurulu olması iyi olur kurulu değilse kurmanız gerekiyor.

nano /etc/yum.repos.d/adobe-linux.repo

içerisine

[adobe-linux]
name=Adobe Systems Incorporated
baseurl=http://linuxdownload.adobe.com/linux/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-adobe-linux

daha sonra ise tekrar update komutunu veriyoruz.

yum update
yum install flash-plugin nspluginwrapper alsa-plugins-pulseaudio libcurl

İşlemimiz tamamlandı dilediğiniz gibi hız testinizi kendi sunucunuz üzerinden yapabilirsiniz. Unutmayın ki bu server speedtest bağlı olarak çalışmaya devam edecek siz iyisi HTML5 destekleyen bir hız test sitesi kullanın OpenSpeedTest.com gibi

Centos 7 Üzerine Zabbix Kurulumu

Zabbix açık kaynak kodlu kurumsal düzeyde bir izleme uygulamasıdır aktif ve pasif bir şekilde izleme yapılabilmektedir. Zabbix ile sunucular,ağ cihazları, sanal sunucu gibi sistemleri izleyebilirsiniz. Zabbix çok büyük işlemler için ölçeklendirilebilmektedir. BT alt yapılarının ihtiyaçlarını karşılamakta üzerine yoktur.Tüm popüler işletim sistemleri ile çalışmaktadır.Otomatik cihaz denetimi ile kolay bir şekilde ekleme çıkartma yapabilirsiniz.Aynı zamanda sistemde bir sorun olduğu zaman yada sistemin durumunu size Mail ve SMS ilede ulaştırabilmektedir aynı zamanda web üzerindende ulaşabilirsiniz.

Gerekenler

Zabbix kurulumu için sistemde LAMP yada LEMP olması gerekmektedir.

Centos 7 Üzerine Nginx, MySQL, PHP (LEMP) Kurulumu

Sunucu Taraflı Yapılandırma

Ön tanımlı olarak yum ile kurayım gibi birşey yapamıyoruz bu yüzden EPEL kütüphanesini sisteme eklememiz gerekiyor.

yum install epel-release

Ardından zabbix için gerekenleri ekleyip kuruluma başlayacağız

rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
rpm -Uv http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm

Zabbix ve geri kalan ayarlar için kurulumu yapıyoruz.

yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-java-gateway

Zabbix için Veritabanı kurulumunu yapalım

mysql -u root -p

giriş yaptıktan sonra mysql komutlarını yazalım veritabanını oluşturalım ve gerekli olan kullanıcıyı veritabanına ekleyelim

create database zabbixd character set utf8;
grant all privileges on zabbixd.* to 'zabbixdbuser'@'localhost' identified by 'sifre';
flush privileges;
exit

veritabanını oluşturduk ve kullanıcıyı ekledik.Veritabanını sisteme ekleme zamanımız geldi bunun için aşağıdaki komutları kullanabilirsiniz 3 tane SQL eklemesi yapacağız

mysql -u zabbixdbuser -p zabbixd < /usr/share/doc/zabbix-server-mysql-2.4.5/create/schema.sql
mysql -u zabbixdbuser -p zabbixd < /usr/share/doc/zabbix-server-mysql-2.4.5/create/images.sql
mysql -u zabbixdbuser -p zabbixd < /usr/share/doc/zabbix-server-mysql-2.4.5/create/data.sql

Server ayarlarına gelelim vhost ayarlaması yapmamız gerekiyor aşağıdaki örnek yapılandırmadan faydalanabilirsiniz.

server {
  listen 80;

  server_name zabbix.mertcangokgoz.com;

  root /home/mertcangokgoz.com/zabbix;

        location / {
            index index.php index.html index.htm;
            try_files $uri $uri/ /index.php?$args;
        }

    location ~ .php$ {
        try_files $uri =404;
        fastcgi_pass unix:/var/run/php-fpm/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

  location ~ /.ht {
    deny all;
  }
}

zabbixe veritabanı ayarlarını yapalım ve bilgileri girelim

Dosya : /etc/zabbix/zabbix_server.conf

DBName=zabbixd

DBUser=zabbixdbuser

DBPassword=şifre

PHP için ayarları yapalım.

Dosya : /etc/php.ini

max_execution_time = 600
max_input_time = 600
memory_limit = 256M
post_max_size = 32M
upload_max_filesize = 16M
date.timezone = Europe/Istanbul

PHP yeniden başlatalım ve yaptığımız ayarlamalar geçerli olsun böylelikle zabbix php taraflı hata vermesinin önüne geçeceğiz.

systemctl restart php-fpm

daha sonradan firewalld üzerinden izin verme işlemini gerçekleştiriyoruz.

firewall-cmd --permanent --add-port=10050/tcp
firewall-cmd --permanent --add-port=10051/tcp
systemctl restart firewalld

Tüm herşey bitti sistemdeki servislerini başlatalım bazılarınıda yeniden başlatıp ayarların geçerli olmasını sağlayalım.Bundan sonra web tarafında işlemler yapacaksınız.Veritabanı ayarı kullanıcı giriş ayarı vs

systemctl start zabbix-server
systemctl start zabbix-agent
systemctl restart nginx
systemctl restart mysqld
systemctl enable zabbix-server
systemctl enable zabbix-agent

web taraflı ayarlamalar için ise nereyi belirlediyseniz orayı kullanacaksınız daha açık bir şekilde söyleyeyim nasıl ya ip adresinden yada ayarladığınız domain/subdomainden ayarları yapacaksınız.

http://ipadresi/zabbix yada yada yada http://ipadresi/

Web taraflı ayarlarını anlatmayacağım çünkü el ile yapılacak olan ayarları biz sunucu tarafında yaptık.Onaylayıp tamamlamanız yetecek ve sadece kullanıcı oluşturmanız işlemi tamamlatacak.Bilgileri toplayacak ana sunucu dışında başka sistemleride izlemek isteyebilirsiniz.Bunun için aşağıdakileri yapabilirsiniz.Zabbixin sadece Agent paketini kurmanız yeterli

rpm --import http://repo.zabbix.com/RPM-GPG-KEY-ZABBIX
rpm -Uv http://repo.zabbix.com/zabbix/2.4/rhel/7/x86_64/zabbix-release-2.4-1.el7.noarch.rpm
yum install zabbix-agent -y

Debian tabanlı sistemlere kurmak istersenizde

sudo apt-get install zabbix-agent

Clientlerin ayarlamalarını yapmak içinde

nano /etc/zabbix/zabbix_agentd.conf

içerisindeki şu satırları sunucunuzun ip adresine göre düzenleyin

[...]
Server=24.78.9.223
ServerActive=24.78.9.223
#agent kurulu olduğu sunucunun ana bilgisayar adresi #
Hostname=sv2.mertcangokgoz.com
[...]

Kayıt edip çıkıyoruz daha sonra servisleri başlatıyoruz.

Debian tabanlı sistemler için

sudo service zabbix-agent start

Centos 7 için

systemctl start zabbix-agent
systemctl enable zabbix-agent

Sisteme Dahil etmek için ise aşağıdakileri yapalım

Configuration -> Hosts. kısmına giriş yapıyoruz ve Create Host butonuna basıyoruz.Açılan panelde Hostname kısmına agent kullandığınız hostnameyi giriyorsunuz.Gruplama seçeneklerinden sunucunuz ney ise artık onları seçiyorsunuz linux servers,virtual machine,templates vs vs bir sürü seçenek olarak sunucunuz ne ile ilgili ise onu seçin

Tamplates kısmından Link New Templates kısmından Select diyip açılan panelden

  • Template App SSH Service
  • Template OS Linux

Add diyip Update seçeneğine basıyorsunuz.

Artık eklediğiniz client sistemde gözükecek ve sistem bilgileri toplamaya başlayacak.Detaylı olarak neler yapabileceğinizi merak ediyorsanız Zabbix Dokümantasyonuna bakabilirsiniz.

CentOS 7 Üzerine Varnish Kurulumu

CentOS 7 Üzerine varnish kurmak istediyseniz doğru yere geldiniz daha önceden farklı sistemler üzerine kurulumları göstermiştik bugün ise son sürüm CentOS üzerine kurulumu yapacağız. Ayrıca kurulum yapılan sistemde kurulu olan uygulamalar sırasıyla

  • Nginx
  • MariaDB Sürüm 10
  • PHP-FPM

Bu sistem içerisine Varnish dahil edeceğiz ve yapılan isteklerin daha hızlı bir şekilde yanıtlanmasını sağlayacağız daha hızlı açılan sayfalarınız olacak buna karşında daha az CPU kullanan siteleriniz olacak. Bilmenizde fayda var SSL olan siteleriniz de Varnish çalışmaz https desteği yoktur. Biraz uğraşırsanız SSL Offloading ile yapılabilmekte.

CentOS 7 deposunu ekleyelim bunun için EPEL kullanıcaz.

rpm -Uvh http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum update
yum install varnish

Kurulum tamamlandıktan sonra Nginx ayarlarına geldi sıra trafiğin gidişatını 80 üzerinden 8080 yönlendiriyoruz. Böylelikle cache işleminin ilk ayağı başlamış olacak

user www-data;
worker_processes auto;

error_log /var/log/nginx/error.log;

pid /run/nginx.pid;

events {
    worker_connections 1024;
}


http {
    include /etc/nginx/mime.types;
    default_type application/octet-stream;

    log_format main '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log /var/log/nginx/access.log main;

    sendfile on;

    keepalive_timeout 60;

    include /etc/nginx/global/*.conf;

    index index.html index.htm;

    server {
        listen 127.0.0.1:8080;
        root /var/www/sitead.com/;
        location / {
        }

        error_page 404 /404.html;
        location = /40x.html {
        }

        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
        }

    location ~ .php$ {
      root /usr/share/nginx/html;
      fastcgi_split_path_info ^(.+.php)(.*)$;
      fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name;
      include fastcgi_params;
}
    }

Geldik ikinci değişikliğe bunu /etc/php-fpm.d/www.conf yolundaki dosya ile yapacağız

listen = /var/run/php-fpm/php-fpm.sock
user = www-data
group = www-data

Varnish’in tamamen aktif olmasını sağlamak istiyoruz bunun içinde  /etc/varnish/default.vcl dosyasına aşağıdaki gibi ekleme yapalım varsa da değiştirelim. Genelde port burada 80 yazar bunu 8080 olarak değiştirelim.

backend default {
    .host = "127.0.0.1";
    .port = "8080";
}

Varnish’deki son ayarımız ise şu dosyada yapacağız /etc/varnish/varnish.params aşağıda verdiklerimi ekleyin varsada değiştirmeyi unutmayın

VARNISH_LISTEN_ADDRESS=sitenizin ip adresi
VARNISH_LISTEN_PORT=80

işlemimiz tamamdır şimdi otomatik olarak sistem başlatıldığında başlaması için eklemeyi yapalım

systemctl enable varnish.service

Yaptıklarımızın geçerli olabilmesi içinde son olarak sistemleri yeniden başlatalım.

systemctl restart php-fpm
systemctl restart nginx
systemctl restart varnish

Bu şekilde yaptığımız ayarlamalar neticesinde Varnish artık sistemimizde aktif bunu anlamak için ise sitenin HTTP başlıklarına bakabilirsiniz. Direk olarak orada X-Varnish yazacaktır…

CentOS üzerine Oracle Express Kurulumu

Oracle Express kurulumunu geçen bir arkadaşın isteği üzerine CentOS bir sisteme kurdum ama internette ki çoğu makale eski olduğu için hafif zorlandım ama hata bende kendi sitesine bakmalıydım bakmadığım için sıkıntı çıktı ve uğraştık şimdi size kullandığım yöntemi göstereceğim oldukça basit kurulumu hemen yapıp kullanabilirsiniz.

Öncelikle sisteme çekelim paketi

wget http://download.oracle.com/otn/linux/oracle11g/xe/oracle-xe-11.2.0-1.0.x86_64.rpm.zip

Sisteme paket indirdikten hemen sonra zip açma ve ekipmanını kuralım

yum install unzip bc

Oracle Express hostname ve buna bağlı olan ip ye takıntılı olduğu için önce hostname sonrada ona bağlı ip adresini hosts dosyasına yazmamız lazım bunun için ise

sudo nano /etc/sysconfig/network

yukarıya giriş yaptığınızda hemen hostname tanımlıyoruz kayıt edip çıkıyoruz standartlara uygun bir şey yazarsanız işiniz kolaylaşmış olur. Hostnameyi ayarladıktan sonra Hosts içerisine tanımlamasını yapalım

sudo nano /etc/hosts

İçerisine

ipadresi hostname

olacak şekilde kayıtı yapıp çıkın şimdi indirdiğimiz paketi rardan çıkartma vakti geldi bunun için

unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip

sonrasında paketimizi bi kuralım güzelce ve sisteme dahil olsun

rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm

Ayarlamalar için çalıştıracağımız parametremiz var burada dikkat etmeniz gereken söylediklerini harfiyen yapmak söylediği portları girmek ve ilerlemek bilginiz yoksa bu şekilde kurmak sizin işinize daha çok yarayacaktır.

/etc/init.d/oracle-xe configure

Kodu girer girmez karşınıza çıkan yerde haliyle çoğu ayarı aynı bırakacaksınız zaten değiştirdiğiniz zaman yapacağımız ayarlar komple değişebiliyor. Ama biz ön tanımlı ayarlamalar ile yapacağız ve centos’da güvenlik duvarını kapatacağız yoksa yapacağımız işlemleri engelliyor olacak

lokkit --disabled

SQLPlus lokal hostdan giriş yapın ve aşağıdakileri harfiyen yapın bu ayarlamaları yapmak için genelde /etc/profile yolunu takip edebilirsiniz centos sürümünüze göre değişiklik gösterebiliyor kimi zaman ay ben bulamadım göremedim yok iyi arayacaksın

export ORACLE_SID=XE
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/xe
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
export PATH=$ORACLE_HOME/bin:$PATH

Sonunda kurulumumuz tamamlandı bu sayede Oracle Express veritabanı uygulamasını kurmuş oldunuz güle güle kullanabilirsiniz. Unutmadan hatırlatayım lisans istiyorum diye bas bas bağırabilir kişisel kullanımda gerek yok ama canınızı sıkabilir dikkat etmenizde fayda var.