Bir Müşteri=)

Kişisel 1 Comment »

Msn ekleyen bir kişi ile kısa konuşmam=)

admin@—-.com:
s.a
hasan@adimhost.com oto-ileti: Msn başında degilim destek talepleriniz için www.adimhost.com/support.php kullanınız
hasan@adimhost.com:
as,
admin@—-.com:
size bişiy soracam?
hasan@adimhost.com oto-ileti: Msn başında degilim destek talepleriniz için www.adimhost.com/support.php kullanınız
hasan@adimhost.com:
?
admin@—.com:
ben hostuma giremiyom neden acaba
admin@—.com:
:S
hasan@adimhost.com:
bizdenmi aldınız?
admin@—.com:
yoo
hasan@adimhost.com:
bana neden soruyorrsunuz o zaman

=)

Başlığı Siz Koyun

Kişisel 1 Comment »

Günlerden bir gün, köylerden birinde, adamın birinin eşeği, kuyunun birine düşmüş. Niye düşer, nasıl düşer sormayın. Eşek bu. Düşmüş işte. Belki kör bir kuyuydu, ağzı tahtayla kapatılmıştı belki, üzerine de toprak dökülmüştü. Zamanla tahta çürüdü, zayıfladı, toprakta biten otları yemek isteyen eşeğin ağırlığını çekemedi ve güm. Hayvancık saatlerce acı içinde kıvrandı, bağırdı kendi dilinde. Ayıptır söylemesi, anırdı yani. Sesini duyan sahibi gelip baktı ki vaziyet kötü. Zavallı eşeği kuyunun dibinde melül mahzun bakınıyor. Üstelik yaralanmış. Karşılaştığı bu durumda kendini eşeği kadar zavallı hisseden adamcağız köylüleri yardıma çağırdı. Ne yapsak, ne etsek, nasıl çıkarsak soruları havada kaldı. Sonunda karar verildi ki kurtarmak için çalışmaya değmez. Tek çare, kuyuyu toprakla örtmek. Ellerine aldıkları küreklerle etraftan kuyunun içine toprak attılar. Zavallı hayvan, üzerine gelen toprakları, her seferinde silkinerek dibe döktü. Ayaklarının altına aldığı toprak sayesinde her an biraz daha yükseldi. Ve sonunda yukarıya kadar çıkmış oldu. Köylüler ağzı açık bakakaldı.

Hayat, bazen bizim de üzerimize abanır. Toz toprakla örtmeye çalışanlar çok olur. Bunlarla başetmenin tek yolu, yakınıp sızlanmak değil, düşünüp silkinmek ve kurtulmak, aydınlığa adım atmaktır…!!!

Sunucu güvenlik ayarları

Linux No Comments »

“disable_functions” (Güvenlik)

“disable_functions” ile serverınızda birçok fonksiyonun çalışmasını engelleyebilirsiniz bu sayede sitenize inject edilen scriptler, sheller için güvenliğinizi almış olursunuz. Bu kadar fonksiyon fazla gelebilir ama iyi bir güvenlik için şart.

Kod:
  disable_functions = foreach, glob, openbasedir, posix_getpwuid, f_open, system,dl, array_compare, array_user_key_compare, passthru, cat, exec, popen, proc_close, proc_get_status, proc_nice, proc_open, escapeshellcmd, escapeshellarg, show_source, posix_mkfifo, ini_restore, mysql_list_dbs, get_current_user, getmyuid,pconnect, link, symlink, fin, passthruexec, fileread, shell_exec, pcntl_exec, ini_alter, parse_ini_file, leak, apache_child_terminate, chown, posix_kill, posix_setpgid, posix_setsid, posix_setuid, proc_terminate, syslog, allow_url_fopen, fpassthru, execute, shell, curl_exec, 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_wifexited, pcntl_wifsignaled, pcntl_wifstopped, pcntl_wstopsig, pcntl_wtermsig, openlog, apache_get_modules, apache_get_version, apache_getenv, apache_note, apache_setenv, virtual

Eğer bu kadar fonsiyonu devre dışı bırakmak fazla geldiyse alttaki gibi de ayarlayabilirsiniz bu da güvenliğiniz için yeterlidir:

Kod:
   disable_functions = glob, posix_getpwuid, array_compare, array_user_key_compare, ini_restore, exec, proc_get_status, proc_nice, proc_open, allow_url_fopen, fin, pconnect, system, dl, passthruexec, shell_exec, proc_close, proc_get_status, chown, chgrp, escapeshellcmd, escapeshellarg, fileread, passthru, popen,curl_exec, shell, execute

“safe_mode” (Güvenlik)

“Safe Mode” adından da anlaşılacağı gibi “Güvenli Mod” anlamına geliyor. “Safe Mode” genelde birçok serverda “Off” durumdadır ve bu da birçok tehlikeye davetiye çıkaran unsurlar arasında yer alır. “Güvenli Modu Açık” durumuna getirmek shellerin serverımızda istedikleri gibi dolaşmalarını, exploitlerin çalıştırılmasını ve komutların execute edilmelerini önler. Günümüzde “açık olan güvenlik modunu” kapalı duruma getiren scriptler mevcut fakat altta anlatılan önlemlerle bunun da önüne geçilebilir.

Kod:
 safe_mode = on

çalışmayan script olursa httpd.conf ve .htaccess dosyasından kullanıcıya gerekli izin verilebilir. örnek aşağıdaki gibi

Kod:
php_flag safe_mode Off

“register_globals” (Güvenlik ve Performans)

php.ini dosyasında bulunan “post” “get” ile gönderilen değerlere kullanıcı adlarıyla ulaşılıp ulaşılamayacağını belirtir. Session, cookie değerlerini kendi adıyla tanımlayarak birer değişken olmasına neden olur. “Off” olarak ayarlanırsa bu gibi değerlere kendi tanımladığı şekilde ulaşılamaz.

Kod:
register_globals = off

çalışmayan script olursa on değerini htaccess dosyasına koyup sadece o siteye açabilirsiniz. veya httpd.conf dosyasına

Kod:
php_flag register_globals on

“allow_url_fopen” (Güvenlik)

“allow_url_fopen” default olarak “açık” şeklinde gelir ve bunun “on” açık olması “file_get_contents()”, “include()”, “require()” fonksiyonlar uzaktaki dosyaları da işlemesine olanak tanır. Bunlara verilen bilgiler hiçbir kontrolden geçirilmezse kritik güvenlik açıklarını sebep olur. (eğer safe mode açıksa ve open basedir aktif ise bunun açık kalmasında hiç bir sorun yok. Kapalı kalması durumunda bir çok script çalışmaz. en basit örnek olarak php nuke çalışmaz.)

Kod:
allow_url_fopen = off

“display_errors” (Güvenlik)

Bu seçenek sitenizin çalışmasında oluşacak bir hatayı tarayıcıya yansıtıp yansıtmayacağını belirler yani siteniz için diyelim bir forum veya portal kullanıyorsunuz ve bunların çalışması esnasında genelde “Fatal error: Call to undefined function get_header() in /home/ahmo/public_html/index.php on line 37″ şeklinde benzeri hata görülür bunların gözükmesini engellemek için bu değeri kapalı duruma getirmek gerekir zira kötü niyetli kişiler sitenizin serverda bulunan tam yolunu öğrenmiş olurlar.
(Eğer safe mod açık ve open basedir aktif ise bunu kapatmanıza gerek yoktur. zira bu tür hatalar ayrıca scriptinde hata neresinde olduğunu gösterdiği için host kullanıcısına sitesini düzenlemesi için büyük kolaylık sağlıyor.)

Kod:
display_errors = Off

“cgi.force_redirect” (Güvenlik)

Bu değer normalde “on” “1″ yani açık olarak gelir ve Windows sunucularında IIS, OmniHTTPD gibi buralarda kapatılması gerekir. Kendi sunucunuz için bu durum yoksa değiştirmenize gerek yoktur.

Kod:
cgi.force_redirect = 0

“magic_quotes_gpc” (Güvenlik ve Performans)

Magic Quotes işlemi GET/POST yöntemiyle gelen Cookie datasını otomatikmen PHP script’e kaçırır. Önerilen bu değerin kapalı olmasıdır.

Kod:
magic_quotes_gpc = off

“magic_quotes_runtime” (Güvenlik ve Performans)

Magic quotes çalışma sürecinde data oluşturur, SQL’den exec()’den, vb.

Önerilen:

Kod:
magic_quotes_runtime = Off

“magic_quotes_sybase” (Güvenlik ve Performans)

Sybase-style magic quotes kullanır (Bunun yerine \’ ‘ bununla ” kaçırır)

Kod:
 magic_quotes_sybase = Off

“session.use_trans_sid” (Güvenlik)

Bu ayarı dikkatli ayarlayın, kullanıcı emaile aktif oturum ID’si içeren URL gönderebilir
kullnıcının güvenliği için bunu kapatıyoruz.

Önerilen:

Kod:
session.use_trans_sid = off


“expose_php” (Güvenlik)

“expose_php” açık ise kapalı yapılması önerilir. Aksi takdirde PHP ile yaptığınız herşeyde sunucu tarafından PHP sürümü gibi bilgiler gösterilir. Hackerlar hatta Lamerlar bu bilgileri severler (ne boh anlıyorlarsa sanki). Bunları engellemek için “off” konumuna getiriniz.

Kod:
expose_php = Off

“html_errors” (Güvenlik)

Bu değerin açık olması durumunda PHP tıklanabilir hata mesajları üretecektir. Kapalı olması güvenlik için önerilir. başında “;” işareti varsa kaldırıyoruz ve değeri kapatıyoruz.

Kod:
html_errors = off

“max_execution_time” (Güvenlik)

Scriptinizi maksimum uygulamayı yürütme zamanı mesela kullanıcı bir linke tıkladı ve bu linkin açılması belirtilen saniyeden fazla olursa sayfa sitenizin serverda bulunduğu tam yolu göstererek hata verir. Bu hataların gözükmesi güvenlik açısından sakıncalıdır. 300 saniye yazan yeri istediğiniz zaman ile değiştirebilirsiniz. bana kalırsa bırakın yolu görsün çok fazla sayfa beklerse extra yğunluk demektir. direk bırakın hata versin. süreyi 30 yapalım.

Kod:
max_execution_time = 30

“max_input_time” (Güvenlik)

Scriptinizin aynı şekilde bir dataya ulaşmak için istek yolladığında maksimum geçen zaman 60 yapalım. fazla bile

Kod:
max_input_time = 60

“allow_call_time_pass_reference” (Performans)

Fonksiyonların çağrılma zamanında yaşanan uyumsuzluklarla ilgili uyarı verir.
örneğin ilk belittiğimiz yasak komutlarda hiç bir uyarı vermeden bom boş sayfa çıkarır karşıya. böyle bir durumda scripte bakmaktansa tekrar bunu açık duruma getirirsiniz hatayı gördükten sonra tekrar kapatın fonksiyonu.

Kod:
allow_call_time_pass_reference = off

“enable_dl” (Güvenlik)

Bu değerin “off” kapalı olması gerekir aksi halde kişilerin sistemde php modüllerinde çalışma yapmasına olanak sağlar ve sistemde rahat dolaşmalarını sağlar güvenlik için kesinlikle kapalı olması gerekir.

Kod:
enable_dl = off

“track_errors” (Güvenlik ve Performans)

Sürücülerde meydana gelen hatalarda yetki verildiği taktirde hata mesajı errormsg olarak değişkende gösterilir.

track_errors = Off

“file_uploads” (Güvenlik)

Eğer sunucda tek site barındırıyorsanız ve o sitede her hangi birşey sunucuya yükletilmiyorsa kapalı kalmasında yarar var. Ama çoklu site barındırıyorsanız. Günümüzdeki tüm siteler artık avatardır, dosya v.s uploat ediyor karar sizin.
ben yine kapatın diyeyimde.

Kod:
file_uploads = off

“ignore_repeated_errors” (Güvenlik ve Performans)

Kapalı olursa tekrarlanan hataları loglamaz.

ignore_repeated_errors = Off

“ignore_repeated_source” (Güvenlik ve Performans)

Tekrarlanan mesajlar engellendiğinde, mesaj kaynağını engeller Bu ayar açık yapıldığında hataları loglamayacaktır farklı dosyalardan ya da kaynaklardan tekrarlanan mesajlarla.

ignore_repeated_source = Off

“display_startup_errors” (Güvenlik ve Performans)

“display_errors” değeri “on” açık olsa bile, Php’nin çalışma sırasında meydana gelen hatalar gözükmeyecektir. Bu değerin şiddetle “off” kapalı duruma getirilmesi önerilir.

Kod:
display_startup_errors = off

“safe_mode_gid” (Güvenlik)

UID - GID kontrollerini sadece UID ile yapmasına izin verir böylece aynı grupta dosyalar bulunsa bile göremezler yani serverda bulunan diğer clientların scriptlerini v.s görmeleri engellenir.

Kod:
safe_mode_gid = Off

“output_buffering = 4096″ (Performans)

4 KB’lik bir tampon çıktısı ayarlar “output buffer”

Kod:
output_buffering = 4096


“register_argc_argv” (Performans)

Kapalı olursa gereksiz ARGV ve ARGC kayıtlarını önler. PHP nin ARGV ve ARGC değişkenlerini bildirip bildirmemesini anlatır.

Kod:
 register_argc_argv = Off

“php_value session.use_trans_sid - php_value session.use_only_cookies”

Bu şekilde ayarlanması URL’deki PHPSESSID bilgilerini kaldırır.
seo filan yapanlar için uygun. genlede smf, phpbb forumlarda ve sension koruma uyguladığınız scriptler için PHPSESSID bilgilerini url ye eklemez. başlarında ; işareti varsa kaldırın.

Kod:
session.use_trans_sid = 0
session.use_only_cookies = 1


“session.auto_start”

Oturum başlatmayı başlangıçta isteme

session.auto_start = 0


“session.cookie_lifetime”

Cookie’nin zaman ayarı

session.cookie_lifetime = 0


“memory_limit”

Scriptin tükettiği maksimum hafıza miktarı
değeri istediğinizgibi verin. 8M çokfazla bir değer. sadece kendi siteniz barınıyorsa bu değer normal. ama host ile uğraşıyorsanız 512K yapmanız daha uygun.

Kod:
memory_limit = 8M

“post_max_size”

PHP’nin kabul edeceği maksimum POST data boyutu.
isteğinize bağlı 1 Mb vermek için 1M yazın

Kod:
post_max_size = 256K

“upload_max_filesize”

Upload edilen dosyaların maksimum boyutu
buda sizin isteğinize bağlı isterseniz 50M yapın. o zaman kullanıcı 50 Mb’a kadar dosya upload edebilir.

Kod:
upload_max_filesize = 256K


“variables_order”

(Ortam, GET, POST, Çerez, Sunucu) bunların işlenmedeki sıralarını belirler.

variables_order = “EGPCS”

Bu kadar ondan sonra ctrl x y diyip kaydediyoruz ve
service httpd restart diyoruz.

Kaynak:whmdestek

apache_get_modules problemi

Linux No Comments »

Merhabalar,wp sitelerinizde konu açmaya çalıştıgınızda boş sayfa çıkabiliyor,başka bir yere yönleniyorsa.Ve aşağıdaki kodu sitenizde görebiliyorsanız,

Warning: apache_get_modules() has been disabled for security reasons in /home/xx/domains/xx.com/public_html/wp-admin/includes/misc.php on line 11

Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/mizah/domains/xx.com/public_html/wp-admin/includes/misc.php on line 11

Sorunun nedeni güvenlik nedeniyle disable_functions içerisine kod eklenmesinden kaynaklanmaktadır.Sunucu yetkisine sahip iseniz ssh baglantısını kullanarak,

nano /usr/local/lib/php.ini komutunu uyguluyoruz,
ctrl + w ile
apache_get_modules kelimesini yazıyoruz, daha sonra”apache_get_modules,” tırnak içersindeki kısmı siliyoruz. ctrl+x komutunu uygulayıp Y deyip kaydediyoruz ve daha sonra,

service httpd restart yapıyoruz.

İşlem bu kadar=)

CSF Kurulumu

Linux No Comments »

Merhabalar,

Sunucumuza,root olarak ssh a bağlanalım.komutları yazalım.

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

sh install.sh

csf kurulumu bitmiştir.

whm üzerinden csf yi ayarlayabilirsiniz.

csf yi sunucudan kaldırmak isterseniz şu komutları uygulamanız yeterli

cd /etc/csf
sh uninstall.sh

Kaynak: whmdestek

Zend kurulumu

Linux No Comments »

Merhabalar,sunucunuza ssh yoluyla bağlantıyı sağladıktan sonra ,

/scripts/installzendopt

komutunu uyguluyoruz ve kurulumun bitmesini bekliyoruz.

File_get_contents engelleme

Linux No Comments »

Merhabalar,sunucunuzda veri çekmede önemli bi işleve sahip file_get_contents nasıl aktif edebileceğinizi göstereceğim,sunucunuza ssh bağlantısıyla giriş yaptıktan sonra,

pico /usr/local/lib/php.ini komutunu uyguluyoruz.

Daha sonra ctrl+w
allow_url_fopen = On yapıyoruz.

Linux Ssh komutları

Linux No Comments »

ls Dizinde bulunan herşeyi listeler.
ls -a Gizli dosyalar ve dizinlerle beraber listeler.
ls -l Bütün dosyaları boyut ve tarihini göstererek listeler.

tar -zxpf Uzantısı tar.gz olan sıkıştırılmış dosyaları açar.
tar -xpf Uzantısı .tar olan dosyaları açar.
gunzip Uzantısı .gz olan dosları açar.
cp Dosyayı kopyalar.
mv Bir dosyayı başka bir dizine taşımanızı sağlar yada dosya adını değiştirir.
mkdir Yeni bir dizin oluşturmanızı sağlar.
rmdir Belirtilen dizini silmenizi sağlar.
rm Dosya silmenizi sağlar.
rm -rf Dizin silmenizi sağlar.
cd Belirtilen dizine geçmenizi sağlar.
cd .. Bir üst dizine geçmenizi sağlar.
cd ~ En üst dizine çıkmanızı sağlar.
pwd O anda bulunduğunuz dizini görüntüler.
pico Belirtilen dosyayı text editör ile düzenlemenizi sağlar.
ftp Belirtilen siteye FTP bağlantısı sağlar.
lynx Belirtilen siteyi görüntüler.
df Harddisk istatistiklerini gösterir.
quota Disk kullanımınızı gösterir.
uname İşletim sisteiminin durumunu gösterir.
whoami Kendi bilgilerinizi gösterir.
who Sunucuya bağlı olanları gösterir.
last Hesabınıza yapılan en son bağlantıyı gösterir.
whereis Belirtilen dosyanın nerede olduğunu gösterir.
BitchX IRC programını çalıştırır.
mail Postalarınızı kontrol eder.
ps -x Sizin çalıştırdığınız işlemleri gösterir.
ps -a Sunucuda çalıştırılan tüm işlemleri gösterir.
ps -ux Çalıştırılan işlemlerin CPU/RAM kullanımıyla gösterir.
kill Pid numarası verilen işlemi durdurur.
kill -9 Pid numarası verilen eggdrop işlemini durdurur.
killall Belirtilen program türündeki tüm işlemleri durdurur.
whatis Belirtilen komutun açıklamasını verir.
man Komut hakkında yardım görüntüler
passwd Shell hesabınıza girerken kullandığınız şifreyi değiştirmenizi sağlar.
vhosts yada vhost Sistemde bulunan vhostları (virtual host) listeler.(BNC için kullanabilirsiniz)
ROOTMAKİNADAN İP ÖĞRENME: ip addr
ROOTTA HESAP AÇMAK : adduser login & chown mavigok /home/login & passwd pass1 , passwd pass2
reboot: Sunucuya restart atar
service mysqld restart: mysql restart atar
service httpd restart: apache ye rest atar
service httpd stop : Sitelere ulaşımı kapatır
apf -d ipadresi : verilen ipe ban atar
service apf restart : apf ye restart atar
netstat -n : sunucuya baglanan ipleri gösterir
netstat -a sunucuya baglanan reseller ipleri gösterir(Proxy kullanmanız fark etmez her zaman gercek cıkış ipi görünür)
pico : ssh üzerinden text editor ile dosya içeriğini görme ve düzenlemeye yarar.
top : Sistem cpu kulalnımını gösterir.
uptime : Uptime Durumu

IP BAN

ip banlama
iptables -A INPUT -s 85.159.54.48 -j DROP
ip ban kaldırma
iptables -X INPUT -s 85.159.54.48 -j DROP

Servera dosya çekme
wget indirilecekdosyaadresi

Zip açma
unzip dosya.zip

tar.gz açma
tar -zxvf dosya.tar.gz

gzip açma
gunzip dosya.tar.gz

Dosya sıkıştırmak
tar cvzf dosyam.tar.gz sıkıştırılacak-dosya

Sql Yükleme
mysql -h dbname -u dbuser -p dbpasword < dbname.sql

Alıntıdır.

Sunucu Güvenliği

Linux No Comments »

Sunucunuza,ssh yoluyla bağlantıyı sağladıktan sonra,

pico /usr/local/lib/php.ini komutunu uyguluyoruz,

ctrl+w seçeneği ile safe_mode yazıp aratıyoruz ve safe_mode konumunu On konumuna getiriyoruz.

Daha sonra aynı şekilde ctrl+w ile disable_functions aratıp karşısına , gene php.ini dosyasında bulunan display_errors on ayarını off yapıyoruz

Gene aynı şekilde ctrl+x ile disable_functions aratıp karşısına,
foreach,hopenbasedir,f_open,system,dl,passthru,cat,exec,popen,proc_close,proc_get_status,proc_n,ice,proc_open,escapeshellcmd,escapeshellarg,show_source,posix_mkfifo,mysql_list_dbs,get_current_user,getmyuid,pconnect,link,symlink,pcntl_exec,ini_alter,parse_ini_file,leak,apache_child_terminate,posi, x_kill,posix_setpgid,posix_setsid,posix_setuid,proc_terminate,syslog,fpassthru,stream_select,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_wifexited,pcntl_wifsi,gnaled,pcntl_wifstopped,pcntl_wstopsig,pcntl_wtermsig,openlog,apache_get_modules,apache_get_version,apache_getenv,apache_note,apache_setenv,virtual

ekliyoruz .Bazıları güvenlik nedeniyle sunucunuzda bazı scriptlerin çalışmalarını engelliyebilir.

Tüm bu işlemleri yaptıktan sonra ctrl+x deyip gelen seçeneğe Y deyip kaydedip çıkıyoruz.

Ek güvenlik olarak csf ve rkhunter gibi yazılımları kurabilirsiniz.

Sunucuza Saldırı Olup Olmadıgını Anlamak İçin,

Linux No Comments »

Merhabalar,sunucunuzda botnet saldırısı olup olmadığını anlamak için ssh yoluyla aşağıdaki komutu uyguluyoruz,

netstat -ntu|awk ‘{print $5}’|cut -d: -f1|sort|uniq -c|sort -n

komutunu uyguladığınızda ip adreslerinin yanlarındaki sayı yüksek değerler içerisiyorsa saldırı etki edebilir derecededir.Ufak rakamlar ise pek önemli değildir.

Saldırının syn olup olmadığını anlamak için ise
netstat -ntu| grep SYN_RECV |awk ‘{print $5}’|cut -d: -f1|sort|uniq -c|sort -n

komutunu uyguluyoruz.

Saldırı yaptıgını tespit ettiğiniz ipleri banlamak için,
iptables -A INPUT -s 127.0.0.x -j DROP

127 ile başlıyan kısma ip adresini yazıp komutu uyguluyoruz.

Toplu olarak banladıgınız ipleri kaldırmak için ise,

iptables -F

Tema Hasan Tokaloglu tarafindan duzenlenmistir