Docker’da server gave HTTP response to HTTPS client

Docker’da server gave HTTP response to HTTPS client hatası ve çözümü

Docker da pull ve push işlemlerinizde imajlar için dışarıya çıkamıyor ve bu nedenle ağınızda nexus gibi bir repo kullanıyor iseniz ve ssl konfigüre edili değil ise docker client reponun ssl çalışmadığını , kendisinin secure istek atmasına rağmen reponun ona nonsecure cevap döndüğünü belirtir.

[[email protected] root]# docker pull x.x.x.x:port/nginx:latest
Trying to pull repository x.x.x.x:port/nginx …
Get https://x.x.x.x:port/v1/_ping: http: server gave HTTP response to HTTPS client

Bu durumda kullanacağınız reponun non secure olduğunu bildiğinizi docker a belirtmeniz gerekir.

Bu nedenle /etc/docker/daemon.json dosyasına aşağıdaki satırı ekleyiniz. , hali hazırda süslü parantezleri boş olarak göreceksiniz , satır tamamıyla aşağıdaki gibi olmalı.

{ “insecure-registries”:[“x.x.x.x:port”] } {}

x.x.x.x olarak belirtilen alan reponuzun adresi, port ise reponuzun dinlediği porttur.

Kaydı girdikten sonra docker ı restart etmeliyiz.

systemctl restart docker

Şimdi tekrar işlem yaptığınızda aynı hatayı almayacaksınız.

Ayhan ARDA

Centrify – AD Kullanışlı Komutlar

Bir kullanıcı ya da Grup Sorgulama:
adquery user ayhanarda
Daha fazla detay için -A parametresini kullanabilirsiniz:
adquery user -A ayhanarda
Sunucunun domaine dahil olup olmadığı ve hakkında bazı bilgiler için:
adinfo domain.ayhanarda.com

Sunucuyu Active Directory’ye dahil etme:
Tabi burada kendi yetkili kullanıcı bilgilerinizi ve ilgili ou yu kendinize göre değiştirmelisiniz.
adjoin -z “domain.ayhanarda.com/Centrify/UnixServer/Zones/UnixServer” -c “OU=Computers,OU=UnixServer,OU=Centrify,DC=domain,DC=ayhanarda,DC=com” –force -R “UnixServer_Prod_AYHANARDA” -V domain.ayhanarda.com -u [email protected]

Sunucuyu domainden çıkarmak için:
Burada domainde yetkili bir kullanıcı kullanmalısınız.
adleave -r -u [email protected]

Centrify konfigürasyonunu yeniden yüklemek için:
adreload

Centrify local önbelleğini temizlemek için:
adflush

Bağlı dizinlerin listesini görmek için:
adinfo -y netstate

Kullanıcının hesabının kilitli olup olmadığını görmek için:
adquery user -A ayhanarda | grep accountLocked

How to see the preferred site (DC is choosing it):
adinfo -V

Hesabın keytab ını resetlemek için:
adkeytab -r -u [email protected]m

Centriyfdc’de debug mode u açmak ve kapamak:
/usr/share/centrifydc/bin/addebug on

/usr/share/centrifydc/bin/addebug off
Debug mode’u açtığınızda loglar aşağıdaki dizine yazmaya başlar: /var/log/centrifydc.log

Logları aşağıdaki komutla silebilirsiniz:

/usr/share/centrifydc/bin/addebug clear

Centrifydc’yi restart etmek

date ; ps -ef|grep adcl ; service centrifydc stop ; sleep 3; service centrifydc start ; sleep 1; ps -ef|grep adcli ; date

Authorization cache’ini boşaltmak için:
dzdo adflush –auth

Yeni bir dc’ye bind etmek istediğinizde önbelleği temizlemek için:
dzdo adflush –bindings

DNS cache’ini temizlemek için:
dzdo adflush –dns

krb5.conf dosyasının önbelleğini temizlemek için:
dzdo adflush –trusts

Sağlık geçmişini temizlemek için:
dzdo adflush –health

Tüm önbelleği temizlemek için:(dikkatli kullanınız)
dzdo adflush –force

Ayhan ARDA

Linux NFS Share ve Mount Nasıl Yapılır?

Linux NFS Share ve Mount Nasıl Yapılır?

Bazen sunucularımız arasında ortak bir klasör paylaşmak isteriz , bu durumda paylaşımı yapacak bir sunucu/klasör ve oraya erişmek isteyen client’lar olmalı. Bi sunucumuzu nfs server olarak yapılandırmakla başlayalım

Öncelikle nfs-utils paketini kurmalıyız.

yum install -y nfs-utils

Sonrasında bir paylaşım klasörü oluşturalım, aşağıdaki ismi ya da path’i değiştirebilirsiniz.

mkdir /var/nfspaylasimi

Şimdi bu klasöre herkesin yazabilmesi için yetkilerini değiştirelim.

chmod -R 755 /var/nfspaylasimi
chown nfsnobody:nfsnobody /var/nfspaylasimi

İlgili servisleri başlatalım

systemctl enable rpcbind
systemctl enable nfs-server
systemctl enable nfs-lock
systemctl enable nfs-idmap
systemctl start rpcbind
systemctl start nfs-server
systemctl start nfs-lock
systemctl start nfs-idmap

Şimdi ise bu klasörlere hangi ip lere sahip clientlar eerişecek ve ne haklarda erişecek bunları tanımlamamız gerekiyor , favori editorünüz ile aşağıdaki dosyayı açalım.

nano /etc/exports

İçini aşağıdaki şekilde doldurabiliriz. Birden fazla sunucu erişecek ise her biri alt alta gelecek şekilde kayıt girebilirsiniz. Ip adresleri erişecek clientların ip adresleridir.

/var/nfsshare    10.20.30.22(rw,sync,no_root_squash,no_all_squash)

Kaydetti isek nfs serverı yeniden başlatabiliriz.

systemctl restart nfs-server

Bir firewall kullanıyorsanız ilgili protokollere izin verebilirsiniz , sunucuda fw kullanmıyor iseniz gerek olmayacaktır.

firewall-cmd --permanent --zone=public --add-service=nfs
firewall-cmd --permanent --zone=public --add-service=mountd
firewall-cmd --permanent --zone=public --add-service=rpc-bind
firewall-cmd --reload

Peki Client’lar nasıl erişecek.

Yine aynı şekilde nfs-utils paketini client sunuculara kurmalıyız.

yum install -y nfs-utils

Bir mount klasörü oluşturalım , buraya yazdığımızda aslında server tarafındaki klasöre yazacak , yine ismi ve path’i değiştirebilirsiniz. Mount işlemlerden bağlama işleri genelde /mnt altına yapılır.

mkdir -p /mnt/nfspaylasimi

Şimdi bağlantıyı geçici olarak test etmek için aşağıdaki komutu girelim , tabi sunucuların birbirine erişebildiğini varsayıyoruz.

mount -t nfs 10.20.30.22:/var/nfspaylasimi /mnt/nfspaylasimi

Kontrol etmek için df -h komutunu kullanabilirsiniz.

[[email protected] mnt]# df -h
Filesystem                                 Size  Used Avail Use% Mounted on
10.20.30.22:/var/nfspaylasimi             10G  2.0G  8.1G  20% /mnt/nfspaylasimi

Şimdi client sunucuda /mnt/nfspaylasımı altında bir dosya yaratalım ve sunucuda görebilecek miyiz test edebiliriz.

cd /mnt/nfspaylasimi && touch ayhanarda.txt

Her şey ok ise işlemi kalıcı hale getirmeliyiz yani sistem boot olduğunda tekrar otomatik olarak mount işlemini yapmalı. Favori editorünüz ile aşağıdaki dosyayı açınız.

nano /etc/fstab

İçine yeni bir satır ekleyerek aşağıdaki kaydı giriniz , ip ve path’leri değiştirmeyi unutmayınız.

//ayhanarda
10.20.30.22:/var/nfsshare    /mnt/nfs/var/nfsshare   nfs defaults 0 0

Hepi bu kadar, umarım faydalı olur.

Ayhan ARDA

Linux Sunucularda System Servisi Oluşturmak

Linux Sunucularda System Servisi Oluşturmak

/etc/systemd/system/ klasörü içinde bir dosya oluşturuyoruz. Servisimizin adını hatırlatacak şekilde isim verilmesi işimizi kolaylaştıracaktır.

Örneğin grafana.service

Bu dosyanın içinde Servisin tanımını, çalışacağı path’i ve çalışma modlarını tanımlayabilirsiniz. Aşağıda grafana için oluşturduğumuz bir örnek bulunmaktadır.

cat /etc/systemd/system/grafana.service

[Unit]
Description=Grafana Servisi

[Service]
WorkingDirectory=/root/
Type=forking
ExecStart=/bin/bash grafana_start.sh
KillMode=process

[Install]
WantedBy=multi-user.target

Görüldüğü üzere /root dizini içinde grafana_start.sh dosyasını çalıştırması beklenmektedir, Çalıştırdığında oluşan process id yi yazar, servisi stop ettiğinizde bu pid’i kill eder.

Servis dosyamızı oluşturduktan sonra bunu sisteme duyurmak gerekir , aşağıdaki komut ile yapabilirsiniz.

systemctl daemon-reload

Sistemin yeniden başlangıcında çalışması için enable edebilirsiniz.

systemctl enable grafana

Bu sırada servisin çalıştıracağı bash scriptine de göz gezdirelim. /root dizini içinde grafana_start.sh isimli bir dosya oluşturduk. Dosyanın içeriği aşağıdaki gibi.

#!/bin/sh
nohup /opt/Grafana/grafana_7.5.2/bin/grafana-server -homepath /opt/Grafana/grafana_7.5.2/ > /dev/null 2>&1 &

Bash scriptlerin çalışabilmesi için çalışma hakkının olması gerekir. Aşağıdaki şekilde yapabilirsiniz.

chmod +x /root/grafana_start.sh

Şimdi servisimizi start edebiliriz.

systemctl start grafana

Aşağıda start/stop sonuçlarınıi görebilirsiniz.

[[email protected] ~]# ps aux | grep graf | grep -v color
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# systemctl start grafana
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# ps aux | grep graf | grep -v color
root     62255  4.2  0.0 1199056 42824 ?       Sl   14:18   0:00 /opt/Grafana/grafana_7.5.2/bin/grafana-server -homepath /opt/Grafana/grafana_7.5.2/
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# systemctl stop grafana
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# ps aux | grep graf | grep -v color
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# systemctl start grafana
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]#
[[email protected]hostrazzi02 ~]# ps aux | grep graf | grep -v color
root     62336  8.0  0.0 1059788 37252 ?       Sl   14:19   0:00 /opt/Grafana/grafana_7.5.2/bin/grafana-server -homepath /opt/Grafana/grafana_7.5.2/
[[email protected]hostrazzi02 ~]#

Linux Performans Analizi İçin Sysstat Kurulumu

Linux Performans Analizi İçin Sysstat Kurulumu

Linux üzerinde performans sorunları yaşadığınızda bazı komutlar ile bu durumu doğrulamanız gerekir ya da sisteminiz iyidir ve daha iyi hale getirmek istiyorsunuzdur , bazen internette yeni komutlar bulursunuz ve bir çok kez bu komutların default olarak kurulu gelmediğini ve çalışmadığını görürsünüz , örneğin aşağıdaki komutları deneyebilirsiniz.

mpstat -P ALL 1
iostat -xz 1
sar -n DEV 1

İşte bu komutların çalışması için sysstat paketine ihtiyaç bulunmaktadır. Sysstat ile ayrıca sistem performans loglarını cron ile belli aralıklar ile çalıştırıp arşivleyebilirsiniz.

Debian/Ubuntu türevlerinde aşağıdaki komut ile kolaylıkla kurabilirsiniz.

apt-get install sysstat

Sonrasında /etc/default/sysstat dosyasında ENABLED değerini false yerine true yazıp kaydedelim.

nano /etc/default/sysstat
ENABLED=”true”

Dilerseniz /etc/cron.d/sysstat dosyanızda data toplama sıklığını değiştirebilirsiniz.

nano /etc/cron.d/sysstat

Sonrasında servisi restart edebiliriz.

service sysstat restart

Şimdi ilk datamıza hemen toplayalım.

command -v debian-sa1 > /dev/null && debian-sa1 1 1

Verileri görmek için ise aşağıdaki komutu kullanabilirsiniz.

sar -A

Bu dataları arşivlemek isterseniz aşağıdaki komutu kullanabilirsiniz.

sar -A > $(date +hostname-%d-%m-%y-%H%M.log)

Ayhan ARDA

Ubuntu ‘artful Release’ no longer has a Release file. hatası ve çözümü

Ubuntu ‘artful Release’ no longer has a Release file. hatası ve çözümü

Ubuntu update ya da paket kurulumu sırasında “no longer has a Release file. hatası alabilirsiniz. Sebebi Ubuntu 17.10 artful kullanıyor olmanız ve artık bu sürümün desteğinin bitmiş olmasıdır. Ubuntu güncel sürümleri görmek için https://wiki.ubuntu.com/Releases adresini kullanabilirsiniz. Bu durumda apt-get update ya da upgrade gibi komutlar işe yaramaz çünkü sources.list dosyanız artful repolarına ulaşmaya çalışmaktadır.

[email protected]:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 17.10
Release: 17.10
Codename: artful

[email protected]:~# apt-get update
E: The repository ‘http://tr.archive.ubuntu.com/ubuntu artful Release’ no longer has a Release file.
N: Updating from such a repository can’t be done securely, and is therefore disabled by default

/etc/apt/sources.list dosyamızı açıp içini boşaltalım ve aşağıdaki repoları ekleyelim.

[email protected]:~# nano /etc/apt/sources.list

## EOL upgrade sources.list
# Hostrazzi.Com
deb http://old-releases.ubuntu.com/ubuntu/ zesty main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ zesty-updates main restricted universe multiverse
deb http://old-releases.ubuntu.com/ubuntu/ zesty-security main restricted universe multiverse

Şimdi tekrar update ve diğer komutları sırası ile çalıştıralım.

[email protected]:~# apt-get update
[email protected]:~# apt-get upgrade
[email protected]:~# apt-get dist-upgrade
[email protected]:~# do-release-upgrade

Son komut ile birlikte işletim sistemi versiyonunuz Ubuntu 18.04 Bionic sürümüne geçecektir , tabi bu yazıyı yazdığım tarihi baz alıyorum. Bu son komut ile birlikte konsolda Size bazı sorular soracaktır , hepsine Y diyerek geçebilirsiniz. Tabiki işlem öncesi snapshot almanızda fayda var. Ayrıca bu yükseltme restart gerektirmekte, belirtmekte fayda var. Şimdi tekrar versiyonu kontrol edebiliriz.

[email protected]:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 18.04 LTS
Release: 18.04
Codename: bionic

Linux sunucular arası şifresiz erişim

Diyelim ki bir adet ana sunucunuz var ve birden fazla erişmek istediğiniz linux sunucu , yani ana sunucunuz diğer sunuculara ssh ile erişirken şifreye gerek olmasın ya da sormasın diye düşünüyoruz.

Ana sunucu ip adresim 192.168.126.128 olsun , bu sunucudan şifresiz erişmek istediğim sunucu ip adreside 192.168.126.159 olsun

Ana sunucumuza ssh ile erişelim. (192.168.126.128)

[email protected]:~# cd /root/.ssh/

[email protected]:~/.ssh# ssh-keygen  -t rsa

Şimdi keyin adını soracak , entera basıp geçebilirsiniz.

Sonrasında 2 defa şifre soracak , yine entera basıp geçebilirsiniz.

Artık key imiz oluştu. bulunduğunuz klasörde id_rsa.pub adı ile görebilirsiniz.

Şimdi aşağıdaki komut ile bizim yeni oluşan id_rsa.pub dosyasını diğer sunucuya göndereceğiz.

[email protected]:~/.ssh# ssh-copy-id -i “[email protected]

Burada bir seferlik bize 192.168.126.159 un şifresini soracak, yazalım , işlem tamamdır.

Artık 192.168.126.128 , 192.168.126.159 a şifresiz erişebilir durumda.

[email protected]:~/.ssh# ssh [email protected]
Welcome to Ubuntu 15.10 (GNU/Linux 4.2.0-16-generic x86_64)
Last login: Thu Apr 14 03:32:33 2016 from 192.168.126.128
[email protected]:~#

Görüldüğü üzere şifre sormadı ve direk içindeyiz. Diğer sunucudan exit yazıp yine ana sunucuya dönebiliriz.

Ayhan ARDA

Ubuntu Swap Alanı Ekleme

Öncelikle makinamızda swap alanı olup olmadını tekrar kontrol edelim.

sudo swapon -s

Eğer yok ise çıktı aşağıdaki gibi olmalı ve boş gelmeli.

Filename                Type        Size    Used    Priority

Tabi sunucuda swap alanı için boş yere olup olmadığını da df -h ile kontrol etmeyi unutmayın.

Aşağıdaki komut ile bir swap alanı oluşturuyoruz.

sudo dd if=/dev/zero of=/swapalani bs=1024 count=512k

Buradaki bs blocksize anlamına gelir , count ise bunun çarpanıdır , dolayısı ile 512*1024 = 512 mb lık bir swap alanı oluşturacağımızdandır, /swapalani na ise kendinize özel bir isim verebilirsiniz.

Şimdi aşağıdaki komuut çalıştıralım.

sudo mkswap /swapalani

İşlem sonunda aşağıdaki gibi bir çıktı elde etmelisiniz.

Setting up swapspace version 1, size = 262140 KiB no label, UUID=103c4545-5fc5-47f3-a8b3-dfbdb64fd7eb

Şimdi swap ı aktif edelim.

sudo swapon /swapalani

Şimdi oluşturduğumuz swap ı kontrol edebiliriz.

swapon -s
Filename                Type        Size    Used    Priority
/swapalani                               file        262140    0    -1

İşlem bu kadar ancak makinanızı reboot ettiğinizde bu işlem kaybolacaktır , kalıcı hale getirmek için fstab a işlemeliyiz.

sudo nano /etc/fstab

En altına aşağıdaki satırı ekleyiniz.

/swapalani       none    swap    sw      0       0

Swappiness i 0 yapmanızı öneririm.

echo 0 | sudo tee /proc/sys/vm/swappiness

Şimdi dosya izinlerini ayarlayalım ki bir güvenlik sorunu oluşmasın.

sudo chown root:root /swapalani
sudo chmod 0600 /swapalani

Saygılarımla

Ayhan ARDA

Linux ‘ te Manual Page’ leri Etkin Kullanmak

Unix ve Linux tabanlı sunucu ya da pc ler’ de bir çok komut , önemli unix dosyaları ya da bazı daemon lar (arka planda çalışan programlar) kendi kullanım kılavuzu ile birlikte gelmektedir , ev kullanıcıları genelde bir komut hakkında bilgiyi internetten almaya ya da bulmaya çalışırken internet olmayan bir ortamda bunu çözmek için uğraşan bir linux sunucu yöneticisi hayal ettiğimizde bunun yararını net olarak anlayabiliriz , man page ler ya da uzun adıyla manual page(s) ler işte bu durumda imdadımıza koşarlar , ayrıca daha önemli bir husus olarak belirtmek gerekirse internette her bulduğumuz bilgiye ne kadar güvenebiliriz , oysa bir man page;  bize net , güvenilir ve doğru bilgiyi hemen vermektedir , şimdi kısaca bir giriş yapalım ve işlerken man ile bağlantılı whatis , whereis ve mandb gibi komutlarında üzerinden geçelim.

man $command    (man komut)

Örnek kullanım  : man wget

Komut girildikten sonra açılan manuel page te aşağı ok tuşu ile tamamını okuyabilir ve ya man page den çıkmak için q tuşunu kullanabilirsiniz.

Okumaya devam et Linux ‘ te Manual Page’ leri Etkin Kullanmak

Centos LVM yapısında Ek Disk İle Disk Boyutunu Büyültmek

Merhabalar;

Bir örnekleme ile gidersek daha akılca kalacağı düşüncesindeyim , sunucumuz hyper-v üzerinde çalışan bir sunucu , üzerinde 2 adet scsi, bir adet ide diskimiz var ve bunlar lvm yapısındalar , amacımız üzerlerine 1 adet daha scsi eklemek ve lvm yapısına dahil etmek.

Scsi diskler sba,sdb,sdc gibi sıra ile isimlendirilir , 3.scsi diski takmadan önce aşağıdaki durumu inceleyelim.

[email protected] [~]# ls -l /dev/sd*

brw-r—– 1 root disk 8,  0 Apr  1 14:36 /dev/sda
brw-r—– 1 root disk 8,  1 Apr  1 14:36 /dev/sda1
brw-r—– 1 root disk 8, 16 Apr  1 14:36 /dev/sdb
brw-r—– 1 root disk 8, 17 Apr  1 14:36 /dev/sdb1

Şimdi üst bölümü yorumlamak gerekirse sda ve sdb disklerini görmekteyiz , muhtemelen yeni bir disk takınca ismi sdc olarak adlandırılacak.

Şimdi disk eklemeden önceki disk boyutumuza bakalım. Gördüğümüz üzere 3.3 gb boş alanımız kalmış , diskin %97 sini kullanmaktayız.

[email protected] [~]# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
96G   88G  3.397% /
/dev/hda1              99M   40M   55M  43% /boot
tmpfs                 2.5G     0  2.5G   0% /dev/shm
/usr/tmpDSK           985M   32M  904M   4% /tmp

Şimdi makinamızı kapatıp hyper-v üzerinden scsi disk imizi boyutunu belirleyerek ekliyoruz , ben şimdi 40 lık bir scsi ekledim ve serverı yeniden başlatıyorum , şimdi sistemin bu diski görüp görmediğini merak ediyorum , bunu da ilk yazdığımız komutu tekrarlayarak göreceğiz .

[email protected] [~]# ls -l /dev/sd*
brw-r—– 1 root disk 8,  0 Apr  1 14:36 /dev/sda
brw-r—– 1 root disk 8,  1 Apr  1 14:36 /dev/sda1
brw-r—– 1 root disk 8, 16 Apr  1 14:36 /dev/sdb
brw-r—– 1 root disk 8, 17 Apr  1 14:36 /dev/sdb1
brw-r—– 1 root disk 8, 32 Apr  1 14:36 /dev/sdc

Okumaya devam et Centos LVM yapısında Ek Disk İle Disk Boyutunu Büyültmek

cp: cannot create symbolic link: Operation not permitted hatası

Linux sunucularımızda dosya ya da klasör kopyalar iken bu hatayı alıyor iseniz aşağıdaki şekilde hata almadan işlem yapabilirsiniz.

cp: cannot create symbolic link: Operation not permitted

cp -rL vhosts /mnt/yedek/   (vhost klasörünü ve içini /mnt/yedek klasörünün içine aktar)

cp -rL aktarılacakklasoryadadosya/buraya/aktar/

cp -rL source dest.

cp: cannot create symbolic link: Operation not permitted

Whm / Cpanel Disk Alanı Yetersiz Uyarısı

Aşağıdaki hatayı alıyor iseniz yapmanız gereken işlem anlatılacaktır,

Sorry for the inconvience!
The filesystem mounted at / on this server is running out of disk space. cPanel operation has been temporarily suspended to prevent something bad from happening. Please ask your system admin to remove any files not in use on that partition.

Cpanel disk alanı %99 un üzerine çıktığında hesap açma gibi işlemleri yapmaz ve yukarıdaki uyarıyı verir , gelecek cpanel de bunu panelden kontrol edebileceğiz fakat şimdilik aşağıdaki dosyayı açıyoruz ,

1 – ssh ile giriş yapılır ,

2- /root/.cpanel/datastore klasörünün içine girilir.

cd /root/.cpanel/datastore

3- _bin_df_-P_-k_-l dosyası açılır.

nano _bin_df_-P_-k_-l

Burada %99 yazılı bir alan göreceksiniz , bu alanı daha küçük bir değer ile değiştirirseniz sorun düzelmiş olacaktır.

Removing WHM Disk Space Errors

 

Basit PhpMail Test Scripti

Bazen phpmail fonksiyonunu test etmek isteyebiliriz. Bu durumlarda elimizin altında olması için paylaştım.

<?php
$to = “[email protected]”;
$subject = “Merhaba!”;
$body = “Merhaba,\n\nNasılsınız?”;
if (mail($to, $subject, $body)) {
echo(“<p>Mesajınız başarı ile iletildi.!</p>”);
} else {
echo(“<p>Sanırım bir sorun var…</p>”);
}
?>

Linux memory cache ‘ini temizlemek

Selamlar,

Sunucumda vmstat komutunu uyguladığımda cache in yüksek oranda veri tuttuğunu gördüm . Sizde bazı performans durumlarında cache i temizlemek isteyebilirsiniz. Bunun için dağıtımınıza göre aşağıdaki komutlardan birini kullanabilirsiniz.

sync; echo 3 > /proc/sys/vm/drop_caches

ya da;

sudo echo 3 | sudo tee /proc/sys/vm/drop_caches

ya da;

sudo sh -c “sync; echo 3 > /proc/sys/vm/drop_caches

Unix-Linux serverda kurulu php extension’ları ssh tan görmek

Selamlar,

Bazen sunucumuzda kurulu php extensionlarını görmek isteriz ya da bize sunucunuzda hangi extensionlar var dediklerinde bu listeyi topluca iletmek isteriz.Öncelikle bu komutu çağırabilmemiz için sunucunuzda php5-cli kurulu olduğundan emin olmamız gerekir. Eğer kurulu değilse kullandığınız dağıtıma göre aşağıdaki komutlardan biri ile kurabilirsiniz.

sudo apt-get install php5-cli ya da    yum install php5-cli

Bu şekilde php5-cli kurulmuş oldu. Şimdi esas komutumuza gelelim.

php –me

Yukarıdaki komutu kullandığınızda tüm kurulu php extensionları listelenecektir. Çıktı aşağıdakine benzer olmalı.

[email protected]# php -me
[PHP Modules]
bcmath
calendar
ctype
curl
date
dom
filter
ftp
gd
hash
iconv
imap
ionCube Loader
json
libxml
mbstring
mcrypt
mysql
mysqli
pcre
PDO
pdo_mysql
pdo_sqlite
posix
Reflection
session
SimpleXML
sockets
SPL
SQLite
standard
tokenizer
xml
xmlreader
xmlwriter
Zend Optimizer
zlib

[Zend Modules]
Zend Optimizer
the ionCube PHP Loader

Centos sanal interface’lere ip eklemek (eth0-0)

Selamlar,

Linuxler serverlar üzerine genellikle birden fazla ip eklemek isteriz.Bunu da eth 0 yada eth 1 üzerinde sanal interfaceler tanımlayarak yaparız. Eth0 ip sinin 67.219.50.59 olduğunu varsayalım ve ihtiyacımız olan şey ise bu makinaya birde 67.219.50.60 ip sini eklemek istediğimizi düşünelim.Alında bunu tek komutla yapabiliyoruz, komutumuz aşağıdaki gibi,

ifconfig eth0:0 67.219.50.60 netmask 255.255.224.0 up

Bu işlemi yaptığımızda ip yi eklemiş oluruz fakat bu işlem kalıcı olmaz , yani makina restart olduğunda geçersiz hale gelir. Amacımız bunu kalıcı hale getirmek olsun.Önce yine aşağıdaki komutu girelim , burda ip ve subnet i kendinize göre değiştirmeyi unutmayınız.

ifconfig eth0:0 67.219.50.60 netmask 255.255.224.0 up

Daha sonra , nano ve ya vi editörüne ihtiyacımız var , iki komuttan birini uygulayabilirsiniz.

Tabi önce /etc/sysconfig/network-scripts/ altına ilerleyin.

vi ifcfg-eth0  ya da nano ifcfg-eth0

Bu işlemden sonra aşağıdakine benzer bir çıktı göreceksiniz.Bunun tamamını kopyalayınız.

# Intel Corporation 82574L Gigabit Network Connection
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:25:90:0A:F2:F2
IPADDR=67.219.50.59
NETMASK=255.255.224.0
ONBOOT=yes

Bu esas interface in konfigürasyonu idi. Şimdi ise sanal interface imize bunu ekleyip ip kısmını değiştireceğiz.

bu yüzden bu sefer vi ifcfg-eth0:0  ya da nano ifcfg-eth0:1 i kullanarak editörü açıyorum.İçine ise aşağıdaki kısmı kopyalayıp ip yi değiştireceğiz.

# Intel Corporation 82574L Gigabit Network Connection
DEVICE=eth0
BOOTPROTO=static
HWADDR=00:25:90:0A:F2:F2
IPADDR=67.219.50.60
NETMASK=255.255.224.0
ONBOOT=yes

Hepsi bu kadar..

Ayhan ARDA

CSF (ConfigServer Security & Firewall) Kurulumu

Bu yazımızda linux serverlarımıza nasıl csf kuracağımızı paylaşacağız. Sunucumuza root olarak login olduktan sonra aşağıdaki komutları sıra ile çalıştırmanız yeterlidir.

rm -fv csf.tgz
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh

Şimdi Whm panelinize giriş yapıp Manage Plugins kısmından erişebilirsiniz

Bu işlemden sonra WHM panelinizin ana ekranında sol en altta CSF yi görebilirsiniz.

Csf yi kaldırmak için ise aşağıdaki komutları çalıştırmalısınız,

cd /etc/csf
sh uninstall.sh

Güncel ayarlar ve demo için aşağıdaki link i inceleyebilirsiniz.

http://www.configserver.com/cp/csfdemo/config.html

Merak ettiğiniz kısımlar ile ilgili konuya yorum yazarak cevap bulabilirsiniz.

How to install csf

Load Kontrol ve Servisleri Yeniden Başlatmak

Aşağıdaki bash script i crontab a ekleyip belirlediğiniz sürelerde çalışmasını sağlar iseniz bu sürelerde load ları kontrol eder ve load yükselmesine neden olan servisi restart eder.

#/usr/bin/!

load=”

20

degisken

=`top -b -n 1 | head -n 10 | grep average | awk ‘{print $12}’ | cut -d, -f1 | cut -d. -f1`

if [ “$

degisken

” -ge “$load” ]

then

echo “

Son islem zamani: `date`” >> /var/log/restart.load

service named restart

service httpd restart

service mysql restart

service exim restart

service pure-ftpd restart

fi