Postfix mail kuyruğunu filtreleyerek temizleme

Bu örnekte göndericisi a@bc.com olan tüm emailler kuyruktan silinir.

postqueue -j | jq -r ‘select(.sender == “a@bc.com”) | .queue_id’ | xargs -I {} postsuper -d {}

jq kurulu olmalıdır ( apt install jq)

başka filtreleme kriterleri için

postqueue -j | jq

yazıp json çıktısındaki alanları görebilirsiniz.

Linuxta tüm dosyalarda bul değiştir komutu

Örnek olarak tüm eposta hesaplarının spamassassin config dosyalarında puan değişikliği aşağıdaki şekilde yapılabilir.

find . -name user_prefs -exec sed -i ‘s/required_score 0.0/required_score 5.0/g’ {} \;

Konsolda çok satırlı dosyayı tek satıra dönüştürmek.

Aşağıdaki komutla birden fazla satır veri olan dosyanızı tek satır haline çevirebilirsiniz.

tr -d ‘\n’ < dosyaniz.txt

Cloudlinuxta ortak tüm php ayarlarının yönetimi

Cloudlinux sunucunuzda kurulu olan tüm php versiyonları için ortak tek dosyada bir kereliğine php ayarlarını değiştirebilirsiniz.Üstelik bu,güncellemelerden etkilenmeyecektir.Çünkü her paket güncellemesinde paket içersinndeki php.ini dosyası sizin dosyasınızın üzerine yazılmaktadır.

Bunu yapmak için öncelikle ssh login olup /etc/cl.selector/ dizinine geçin.

global_php.ini isimli dosyayı nano veya vi gibi bir editorle açın.

[Global PHP Settings] tagı altında tıpkı php.ini standart formatında olduğu gibi kendi direktiflerinizi yazın.Örneğin date.timezone veya disable_functions gibi.Altta sizin için bir örnek;

[Global PHP Settings]

disable_functions= proc_open,escapeshellcmd,escapeshellarg, show_source,
posix_mkfifo, ini_restore, mysql_list_dbs, get_current_user, getmyuid,pconnect, link, symlink, fin, exec, fileread, shell_exec, pcntl_exec, leak, apache_child_terminate, ch
own, posix_kill, posix_setpgid, posix_setsid, posix_setuid, proc_terminate, syslog, fpassthru, execute, shell, chgrp, stream_select, passthru, socket_select, socket_create,
socket_create_listen, socket_create_pair, socket_listen, socket_accept, socket_bind, socket_strerror, pcntl_fork, pcntl_signal, pcntl_waitpid, pcntl_wexitstatus, pcntl_wif
exited, pcntl_wifsignaled, pcntl_wifstopped, pcntl_wstopsig, pcntl_wtermsig, openlog, apache_get_modules, apache_get_version, apache_getenv, apache_note, apache_setenv, vir
tual, eval, allow_url_fopen, pconnect, p_connect,posix_getpwuid,fileowner,sym

Dosyanızı kaydedip editorden çıkın.Tekrar konsola geldiğinizde şu komutla işlemi onaylayın.

[root@srv ~]# selectorctl –apply-global-php-ini

Bunu dilerseniz herhangi bir web hosting altına yükleyebileceğiniz phpinfo ile yaptığınız değişiklikleri görebilirsiniz.

Apache SSL açıklarını kapatın

Son dönemde ortaya çıkan openssl ve zayıf şifreleme methodlarını kapatın.Özellikle bankalardan sanal pos talep etmeden önce sunucunuzda uygulamanızı tavsiye ederim.

Centos sunucular için

/etc/httpd/conf.d/ssl.conf dosyasının en altına aşağıdaki satırları yerleştirin.Httpd servisini yeniden başlatın.Nispeten güncellenmemiş sunucular için yum update yapmanızı öneriririm.

<IfModule mod_ssl.c>
SSLProtocol +TLSv1 +TLSv1.1 +TLSv1.2 -SSLv2 -SSLv3
</IfModule>
<IfModule mod_ssl.c>
#SSLCipherSuite HIGH:!aNULL:!MD5:!RC4-SHA:!RC4
#SSLCipherSuite ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:ECDH+3DES:DH+3DES:RSA+AESGCM:RS
SSLCipherSuite HIGH:MEDIUM:!aNULL:!MD5::!RC4
</IfModule>

Plesk Onyx php fpm limitlerini arttırmak

Bir websitenin fpm pool ayarlarında karşınıza çıkabilecek birkaç method vardır.Bunlardan ondemand tipi en çok önerilen yöntemdir.Aşağıda bir websitenin nasıl pool ayarlarının yapılacağını göreceksiniz.

Öncelikle

/opt/plesk/php/5.6/etc/php-fpm.d/alanadiniz.com.conf

dosyasından bahsedelim.Bu hostinginize özel fpm konfigurasyon dosyasıdır.

; By default use ondemand spawning (this requires php-fpm >= 5.3.9)
pm = ondemand
pm.max_children = 5
pm.process_idle_timeout = 10s
; Following pm.* options are used only when ‘pm = dynamic’
pm.start_servers = 1
pm.min_spare_servers = 1
pm.max_spare_servers = 1

Deneme yapmak için bu dosyada değişiklik yapabilirsiniz.Ancak httpmng çalıştırdığınızda veya plesk hosting ayarlarından birini değiştirip ok butonuna tıkladığınız anda yaptığınız değişikliklerin yok olacağını unutmayın.Kalıcı konfiguraston için zaten dosyanın en başında ne yapmanız gerektiği yazıyor.

; ATTENTION!
;
; DO NOT MODIFY THIS FILE BECAUSE IT WAS GENERATED AUTOMATICALLY,
; SO ALL YOUR CHANGES WILL BE LOST THE NEXT TIME THE FILE IS GENERATED.

; If you need to customize this file, use either custom PHP settings tab in
; Panel or override settings in /var/www/vhosts/system/alanadiniz.com/conf/php.ini.
; To override pool configuration options, specify them in [php-fpm-pool-settings] ; section of /var/www/vhosts/system/alanadiniz.com/conf/php.ini file.

Yapmanız gereken

/var/www/vhosts/system/alanadiniz.com/conf/php.ini dosyasını nano veya vi ile açıp en alta indikten sonra örnek olarak;

[php-fpm-pool-settings] pm.max_children = 100

yazmak olacaktır.Max children zaten ondemand methoduyla ilgili olduğundan dolayı diğer parametreleri yazma gereği duymuyorum.Onlar zaten fpm conf dosyasında var.Dosyayı kaydettikten sonra son olarak yapılan değişikliğin uygulanmasını sağlıyorum.

/usr/local/psa/bin/php_settings -u

 

Hepsi bu kadar.İlaveten bu ayarlar cloudlinux ile gelen cagefs-lve için geçerli değildir.Cloudlinux php-fpm yi an itibariyle hala desteklemiyor.

Eğer whm/cpanel kullanıyorsanız web arayüzden yapılabiliyor.Plesk Onyx ‘de bunu web arabirimine taşıyacağını duyursa da hala böyle bir kolaylık görememekteyiz.

Plesk 11x 12x Bad Gateway Hatası ve Çözümü

Plesk panele http/8880 veya https/8443 portlarından erişim yapamadığınızda,sunucuya ssh üzerinden giriş yaparak şu logu takibe alın.

/var/log/sw-cp-server/error_log

Bu, plesk panelin kendisinin üzerinde koştuğu nginx web server’ın hata kaydıdır.Web siteler için kullandığınız nginxten farklı olduğunu söylememe gerek yok sanırım.

Eğer yukarıdaki log dosyası içeriğinde ,

recv() failed (104: Connection reset by peer) while reading response header from upstream, client: 123.123.123.123, server: , request: “POST <some url>

şeklinde hata satırları görüyorsanız alltaki dosyada ilgili değişiklikleri yapınız.

 /etc/sw-cp-server/config
fastcgi_buffers 16 16k;
fastcgi_buffer_size 32k;

Ardından ilgili servisleri yeniden başlatınız.

# /etc/init.d/sw-cp-server restart

# /etc/init.d/sw-engine restart

Unable to log into Plesk: Access for administrator from address xx.xx.xx.xx is restricted in accordance with IP Access restriction policy currently applied

Eğer yukarıdaki hata satırlarını göremediyseniz muhtemelen ip adresiniz bloklanmış olabilir.Farklı bir ip üzerinden girmeyi deneyin veya yine ssh üzerinden login olarak mysql shell’i açın.

mysql -u admin -p$(cat /etc/psa/.psa.shadow)

use psa;

mysql> select * from cp_access;

mysql> select * from misc where param=’access_policy’;

Engellenmiş ip adreslerini ilk sql cümlesinin çıktısında görebilirsiniz.Bu kayıtları silmek için

mysql> delete from cp_access;

Erişimi heryere açmak için;

mysql> update misc set val=”allow” where param=’access_policy’;

 

Plesk arayüzünü Nginx üzerinde php-fpm ile beraber çalışan bir sistemde sunar.Benzeri şekilde websitelerinizde de aynı mantıktadır.Tek farkı websitelerin çalıştığı ortamdan ayrılmış,farklı portlardan çalışan yazılımlardır.

Eğer fpm limitleri yetmiyor veya bir başka problem olduğunu düşünüyorsanı şu dosyalar size yardımcı olabilir.

/etc/sw-engine/pool.d/plesk.conf —> Plesk uygulaması için hazırlanmış fpm limitleri,pm,pm_max_children ,max server max request gibi..

/etc/sw-engine/sw-engine-fpm.conf —> Global fpm ayarları (Sadece plesk uygulaması için)