Blog'dan Yazılar

Sizler için profesyonel yazarlarımız ile hazırladığımız makalelerimizi okuyun ve kendinizi geliştirin.

Sunucularda dizinler arası geçişi kapatmak
Sunucularda dizinler arası geçişi kapatmak
Sunucularda özellikle sunucu içinde çok site barınıyorsa, hosting hizmeti sağlanıyorsa en büyük şikayetlerden birinin shell atılan bir hesaptan diğer hesaplara geçilmesidir. saca 1 hesaba saldırı olur ve shell atılır, sonrasında farklı sitelerin dosyalarına müdahale edilir, link eklenir vs. Alt bölümde sizlere vereceğim komutlar sizlere belirli dosyaların yazma izinlerinde değişiklikler yaparak eskisine nazaran daha iyi bir güvenlik sağlayacaktır. Alttakilerin yanısıra bir tarafdan da php.ini den safe_mode_on konuma alarak disable_functions alanlarına fonksiyonları (engellemeleri) girmeniz işinizi dahada kolaylaştıracaktır. Bunlara farklı yazılarımda değineceğim. Siz alttakileri ilk öncelik olarak uygulayın büyük ölçüde sorun çözülecektir. Alt bölümdeki kodlar ile bir çok shell için dizinler arası geçiş kapatılabilir. Benim genelde kullandığım komutlar alttakiler. Kodlar agrasiftir. Radyo, irc kullanıyorsanız komutları girince  hata alabilirsiniz. Bu nedenle irc ve radyo çalışmayan sunucularda uygulayınız. Dizinler arası geçişi kapatmak: chattr -i /usr/bin/vdir chmod 700 /usr/bin/vdir chattr +i /usr/bin/vdir chattr -i /usr/bin/perl chmod 700 /usr/bin/perl chattr +i /usr/bin/perl chattr -i /bin/cat chmod 700 /bin/cat chattr +i /bin/cat chattr -i /bin/ln chmod 700 /bin/ln chattr +i /bin/ln chattr -i /usr/bin/dir chmod 700 /usr/bin/dir chattr +i /usr/bin/dir chattr -i /usr/bin/find chmod 700 /usr/bin/find chattr +i /usr/bin/find chattr -i /usr/bin/tac chmod 700 /usr/bin/tac chattr +i /usr/bin/tac chattr -i /bin/ls chmod 700 /bin/ls chattr +i /bin/ls Komutları toplu olarak kopyalayıp bir kerede ssh ekranına yapıştırıp enterleyebilirsiniz. Komutları girince sunucumuzda perl kapanır. Bu nedenle kontrol panel girişlerini alttaki şekilde yapmalısınız.Whm: siteniz.com:2086cPanel: siteniz.com:2082Mail: siteniz.com:2095Yani /whm veya /mail gibi komutlarla girmeye çalıştığınızda hata verecektir. Bu durum hosting firması sahibi iseniz ve sizi rahatsız edecekse, şu komutu girerekte üsttekine göre daha az güvenli bir komut kullanabilirsiniz. chattr -i /usr/bin/vdir chmod 700 /usr/bin/vdir chattr +i /usr/bin/vdir chattr -i /usr/bin/perl chmod 711 /usr/bin/perl chattr +i /usr/bin/perl chattr -i /bin/cat chmod 700 /bin/cat chattr +i /bin/cat chattr -i /bin/ln chmod 700 /bin/ln chattr +i /bin/ln chattr -i /usr/bin/dir chmod 700 /usr/bin/dir chattr +i /usr/bin/dir chattr -i /usr/bin/find chmod 700 /usr/bin/find chattr +i /usr/bin/find chattr -i /usr/bin/tac chmod 700 /usr/bin/tac chattr +i /usr/bin/tac chattr -i /bin/ls chmod 700 /bin/ls chattr +i /bin/ls değişen tek şey: chmod 700 /usr/bin/perl  burası. 700 olan değer 711 olarak kullanıldı. Güncellemelerde de belirli hatalar alabilirsiniz. Bu nedenle apache update ya da sunucu güncellemelerinden önce üstteki kural serilerini geçici süre devre dışı bırakmalısınız. Üstte yapılanları iptal edip eski hale dönmek için; Apache update, cpanel update ya da yum update komutlarını çalıştırmadan alttaki komuta dönmenizi öneriyorum. Güncelleme bitince üstteki komutlardan size uygun olanı kullanabilirsiniz. chmod 755 /usr/bin/vdir chattr +i /usr/bin/vdir chattr -i /usr/bin/perl chmod 755 /usr/bin/perl chattr +i /usr/bin/perl chattr -i /bin/cat chmod 755 /bin/cat chattr +i /bin/cat chattr -i /bin/ln chmod 755 /bin/ln chattr +i /bin/ln chattr -i /usr/bin/dir chmod 755 /usr/bin/dir chattr +i /usr/bin/dir chattr -i /usr/bin/find chmod 755 /usr/bin/find chattr +i /usr/bin/find chattr -i /usr/bin/tac chmod 755 /usr/bin/tac chattr +i /usr/bin/tac chattr -i /bin/ls chmod 755 /bin/ls chattr +i /bin/ls Not: Sunucularınız saldırıya uğrar ya da bir veya daha fazla hesap hacklenirse üstteki anlatımları uygulamak ilk işiniz olmalı kısaca.
cPanel Yazılımsal firewall kurulumu ve saldırı önleme ayarlamaları (CSF)
cPanel Yazılımsal firewall kurulumu ve saldırı önleme ayarlamaları (CSF)
CSF yani config server firewall linux sunucunuzun iptables ini saldırılara kaşı yapılandırmanızı sağlayan oldukça işlevli ve anlaşılır gelişmiş bir yazılımsal firewall dır. CSF sayesinde küçük ve orta düzey atakları donanımızın ve hattınızın elverdiği ölçüde engelleyebilirsiniz. Elbette titiz bir ayarlama ile bunu yapabilirsiniz. CSF ile Fazla sayıda istek yapan ipleri oto banlayabilir, syn atakları kısmen engelleyebilir, UDP küçük atakları limitleme ile engelleyebilirsiniz. Ayrıca ülkesel kısıtlamada yapabilinmesi ayrı bir güzelliktir. CSF yazılımını illaki cPanel ile kullanma mecburiyetiniz bulunmuyor. Sunucu bazında bir koruma sağladığından centos sunucunuza direkt olarak kurup ssh komutları ile düzenleme yapabilirsiniz. CSF yazılımını aşağıdaki komutlar ile kuralım :           Shell   1 2 3 4 5 6 cd /usr/local/src rm -fv csf.tgz wget http://download.configserver.com/csf.tgz tar -xzf csf.tgz cd csf sh install.sh Kurulum tamamlandığında WHM panelinizin sol kısmındaki Plugins altında ConfigServer Security & Firewall seçeneği göreceğiz. Tıkladığımızda karşımıza CSF ye ait detaylı bir arayüz gelecek. Biz her detayı çok karmaşık olmaması için sizlere açıklamayacağız sadece işinize yarayacak alanları açıklayacağız. Server information kısmı detaylı görsel açıklama :   csf – ConfigServer Firewall kısmı detaylı görsel açıklama : Yukarıdaki görseller sayesinde arayüz üzerinden bir çok işlemi kolayca yapabileceksiniz. Kalıcı veya geçici ip engelle, engel kaldırma, izin verme, restart etme, logları inceleme vb. Şimdi gelelim asıl meseleye yani Firewall yapılandırması yapmaya. Bu işlem için  a tıklayın. Aşağıda anlatacağımız ayarları kendinize göre düzenleyin. YAPILMASI GEREKLİ AYARLAR : Firewall ı açmak için : Log ayarı için : Spam mail block için : 40 saniye içerisinde 180 bağlantı yapan ipyi engellemek için : YAPILMASI GEREKLİ OLMAYAN (TERCİHSEL) AYARLAR : SYN SALDIRI alıyorsanız aşağıdaki şekilde güncelleyebilirsiniz. Eğer syn saldırı almıyorsanız SYNFLOOD = 0 olarak bırakın. UDP SALDIRI alıyorsanız aşağıdaki şekilde güncelleyebilirsiniz. Eğer udp saldırı almıyorsanız UDPLOOD = 0 olarak bırakın. Saldırının geldiği bir veya birden fazla ülkeyi engellemek istiyorsanız ülke kısaltma kodlarını kullanarak aşağıdaki şekilde engelleyebilirsiniz. Biz US yani unites states in engellenmesi taraftarı değiliz çünkü google, cpanel gibi hizmetler oraya bağlıdır. Eğer yalnızca portları ülkelere kapatmak istiyorsanız aşağıdaki şekilde kullanabilirsiniz. Biz US yani unites states in engellenmesi taraftarı değiliz çünkü google, cpanel gibi hizmetler oraya bağlıdır. Eğer sunucunuzda default haricinde açılması gereken TCP veya UDP port var ise aşağıdaki alandan ayarlayabilirsiniz : Ayarlamalarınız bittiğinde en alttaki CHANGE  Change  butonuna tıklayın. Ardından Restart csf+lfd butonuna tıklayın. Artık tercihsel ayarlanmış gayet iyi bir firewall’ımız mevcut Eğer csf firewall ı beğenmediyseniz ve kaldırmak istiyorsanız aşağıdaki komutları ssh dan yürütmeniz yeterlidir :           Shell   1 2 cd /etc/csf sh uninstall.sh Hayırlı olması dileğiyle
mod_pagespeed aktifleştirme
mod_pagespeed aktifleştirme
mod_pagespeed Nedir?mod_pagespeed , Google tarafından daha hızlı açılan sayfalar ve bu sayede de daha kaliteli dönüşümler elde eden websiteleri oluşturulması amacı ile, apache kullanan websunucularında kullanılmak üzere hazırlanmış bir eklentidir. Detaylı bilgi için aşağıdaki adresi incelemenizi öneririz. https://developers.google.com/speed/pagespeed/module mod_pagespeed açık kaynak kodlu bir web sunucu (Apache & Nginx) modülüdür. (Nginx için kaynak koddan derleme yapılmalıdır) Bu modül web sayfalarınızı ve web sayfalarınızda kullanılan kaynakları otomatik olarak optimize eder. mod_pagespeed 40'tan fazla yapılandırılabilir optimizasyon filtrelesine sahiptir. PageSpeed modülü en son web optimizasyon tekniklerini kullanmaktadır. PageSpeed modülü ücretsiz, açık kaynak ve sık sık güncellenen bir modüldür. CSS, JavaScript, resim dosyalarını optimize eder. Bu sayade sunucunuzun performans artırır ve sayfa yükleme süresini kısaltmaya yardımcı olur. mod_pagespeed kurulumu ile ilgili aşağıdaki adresten detaylı bilgi alabilisiniz.https://developers.google.com/speed/pagespeed/module/download Bu yazıda Linux CentOS 6 (64bit) sunucuda Apache Web Server üzerinde mod_pagespeed modülünün kurulumu anlatılmaktadır. # Google mod_pagespeed Reposunun EklenmesiHerhangi bir metin editörü (vi, vim, nano vb.) ile "/etc/yum.repos.d/mod-pagespeed.repo" dosyası oluşturunuz ve içeriğini aşağıdaki gibi düzenleyiniz. vi /etc/yum.repos.d/mod-pagespeed.repo [mod-pagespeed]name=mod-pagespeedbaseurl=http://dl.google.com/linux/mod-pagespeed/rpm/stable/x86_64enabled=1gpgcheck=0  Eklenen repo'yu " yum repolist " komutuyla kontrol ediniz.yum repolist # Apache Web Server için mod_pagespeed kurulumuyum install mod-pagespeed -y   Aşağıdaki adımlarla Apache Web Server mod_pagespeed modülünün kurulu olduğunu phpinfo fonksiyonu ile test edebilirsiniz vi /var/www/html/phpinfo.php <?phpphpinfo();phpinfo(INFO_MODULES);?> External IP adresiniz üzerinden "X-Mod-Pagespeed" header 'i görüntüleyebilirsinizhttp://External_IP_Adresiniz/phpinfo.php Apache Web Server için PageSpeed modülü CentOS sunucularda " /etc/httpd/conf.d/" dizini içerisinde "pagespeed.conf " ismiyle bulunmaktadır. # PageSpeed’i aktif etmek için /etc/httpd/conf.d/pagespeed.conf dosyası için ModPagespeep 'i "on" olarak değiştiriniz.ModPagespeed on # PageSpeed’i aktif etmek için /etc/httpd/conf.d/pagespeed.conf dosyası için ModPagespeep 'i "off" olarak değiştiriniz.ModPagespeed off
cPanel mod_gzip aktifleştirilmesi
cPanel mod_gzip aktifleştirilmesi
Giriş Linux sistemlerinde, HTTP içeriğini istemciye sunulmadan önce sıkıştırmak için gzip (mod_deflate) kullanılır; bu, daha hızlı ağ aktarımlarıyla sonuçlanır. Ancak sadece mod_deflate'in etkinleştirilmiş olması içeriğinizin sıkıştırılması için yeterli değildir. Ek olarak, gzip sıkıştırması CGI PHP işleyicisi ile çalışmaz, bu yüzden onu kullanmak için farklı bir PHP işleyici seçmelisiniz.   prosedür İlk olarak, sunucunuzda mod_deflate'in etkinleştirildiğinden emin olmak isteyeceksiniz: [17:09:11 testhost [email protected] ~]cPs# httpd -M | grep 'deflate' deflate_module (paylaşılan)   Değilse, EasyApache 4 arayüzünü kullanarak mod_deflate'i kurmak isteyeceksiniz ( WHM >> Ana Sayfa >> Yazılım >> EasyApache 4 ).   Profilinizi özelleştirin, Apache modüllerini seçin, mod_deflate'i bulun ve işaretleyin. Ardından sol taraftaki "İncele"ye tıklayıp yeni yapıyı sağlayabilirsiniz.   Bu yapıldıktan sonra, ya bir Apache içermesinde (sunucu genelinde gzip sıkıştırmasını zorlamak için) kuralları ayarlayarak ya da tek bir etki alanının .htaccess dosyası aracılığıyla sıkıştırmayı etkinleştirmeniz gerekir . (Yalnızca bir etki alanı için gzip sıkıştırması istiyorsanız). Genel olarak gzip sıkıştırmasını ayarlamak istiyorsanız aşağıdaki belgeler yardımcı olacaktır: Düzenleyiciyi Dahil Et   Ek olarak, GTmetrix'ten alınan aşağıdaki kaynak, hangi kuralların uygulanacağını anlamak için yararlıdır: PageSpeed: Sıkıştırmayı etkinleştir   Bir php.ini dosyası kullanarak Wordpress siteleri için zlib.output_compression özelliğini etkinleştirmek de mümkündür . Söz konusu php.ini dosyasına gidin ( WHM >> Software >> MultiPHP INI Editor ) ve kaydetmeden önce aşağıdaki satırı dosyanın altına ekleyin: zlib.output_compression = Açık