Merhaba arkadaşlar, bugun siz değerli uyelerimize dev gibi bir konu sunacagım linux makinelerde hic şuphesiz ki en onemli olaylardan birisi guvenlik diğeri optimizasyonudur. Bugun ise ben S4curity34 size bu konularda cok yardımı olacak dev arşivimi aciyorum :s8: hemen başlıyalım oncellikle makinemizin cozumlerini bulalım..
Arkadaşlar mumkunse web sunucu olarak nginx veya litespeed'i tercih edin aksi taktirde ne yaparsak yapalim saldırılar elbet bizi bugun olmasa bile yarın bulur oyuzden web sunucusu cok onemli litespeed olmasını şiddet ile tavsiye ederim.. Web sunucu kontrol panelini mutlaka cPanel derim, plesk panel v.s hepsi hikaye bir iş yapiyorsak duzgun yapmalıyız cPanel bu alanda en iyisidir.
Oncellikle makineyi kurdugunuzu farz ediyorum yani cpanel v.s kurulumunun bittigini farz ediyorum.
# WHM Optimizasyonu #
1-) Oncellikle birkac adımı halledelim ki makinemiz'de gereksiz sorunlar yaşanmasın. Vericegim kelimeleri tek tek aramayın ctrl f komutunu kullanarak arama yapınız, Tweak setting bolumune girererk boxtrapper alanını bulalım ve devredısı birakalım cunku ip adresimize spam yapilabilir oyuzdenn gereksiz.
2-) Service configration alanına gelerek exim configration editor alanına giriyoruz ve alttaki advanced editor e giriş yapiyoruz son olarak ilk kutucukda log_selector v.s v.s yazisini gorurusunuz ekleyip kaydediyoruz bu sayede cPanel'de exim daha performanslı calişacak fakat exim'i yeniden başlatmayı unutmayın
3-) Bu işlemi aslında ssh'den php.ini alanından yapabiliyoruz fakat eksik hatalı yapip makineyi bozmayın whm en ideali service configration alanına gelip php configration editore gelip ustteki switch to advanced kısmına girip disable_functions karşısına yazalım.
Kod:
exec,system,glob,cat,dl,openbasedi r,p open,proc_close,proc_get_status,proc_nice,proc_ope n,escapeshellcmd,escapeshellarg, show_source,posix_mkfifo,mysql_list_dbs,get_curren t_user,getmyuid,pconnect,link,symlink,pcntl_exec,i ni_alter,parse_ini_file,leak,apache_child_terminat e,posix_kill,posix_setpgid,posix_setsid,posix_setu id,proc_terminate,syslog,fpassthru,allow_url_fopen ,stream_select,socket_select,socket_create,socket_ create_listen,socket_create_pair,socket_listen,soc ket_accept,socket_bind,socket_strerror,pcntl_fork, pcntl_signal,pcntl_waitpid,pcntl_wexitstatus,pcntl _wifexited,pcntl_wifsignaled,pcntl_wifstopped,pcnt l_wstopsig,pcntl_wtermsig,openlog,apache_get_modul es,apache_get_version,apache_getenv,apache_note,ap ache_setenv,virtual,name
Bu sayede bircok ozelligi engellemiş olacagız asıl onemlisi makineyi bircok saldırıdan korumuş olacagız.
işlemi bitirince aynı sekmede enable.dll kapatip kaydedip cıkabilirsiniz
4-) Sunucumuza bir'de antivirus kuralım derim managed plugins alanına gelerek istediginiz bir antivirus yazilimini ucretsiz olarak kurun
5-) Apache derlemesi fakat ben size burdan apache derlemesini anlatırım fakat siz yapamazsanız makine bozulur oyuzden hic risk almayın googleden apache derlemesi diye yazın videolu resimli anlatımlarını izleyin riske girmeyin
6-) Security kısmına gelip security center alanına giriş yapınız
HTML:
cPHulk Brute Force Protection, PHP open_basedir Tweak, Apache mod_userdir Tweak, SMTP Tweak ve Shell Fork Bomb Protection
goreceginiz bu ozelliklerin hepsini on yani aktif hale getirin icerige tıkladıgınız zaman enable disabled yazar bunların anlamını bilmeyen varsa ssh ile uğraşmasın
# SSH Guvenlik & Optimize Ayarları #
1-) İlk olarak sunucudan config ve veri cekilmesini engelleyelim.
SSH root girişi yapalim ve komutumuzu verelim
HTML:
pico /etc/ssh/sshd_config
Protocol 2,1 ayarının başına # koyarak pasif hale getiriniz.
Protocol 2 ayarının başındaki # işaretini ise kaldırınız.
İşlemleri yaptiktan sonra ctrl x vererek onumuze gelen soruya y ve enter olarak dosyayi kaydediyoruz son olarakda bi duzeltelim makine kendine gelsin
HTML:
service sshd restart
2-) Evet şimdi tmpfs alanını korumaya geldik.
SSH'den
HTML:
pico /etc/fstab
komutumuzu vererek dosyamızı acalim
*Bu dosya uzerinde yapılan yanlış bir işlem sonucu oluşacak hata sunucunun formatlanmasına dahi yol acabilir.
*Bunun icin belirtilen işlemler harici işlemlerden sakınınız.
Oncellikle " tmpfs " alanını bulalım aynı satırda yer alan defaults altına ekliyelim
HTML:
,noexec,nosuid
son duruma bakarsak aynı bu bicimde olacak
Kod:
tmpfs /dev/shm tmpfs defaults,noexec,nosuid 0 0
daha sonrasında dosyayı kapatarak alttaki komutumuzu veriyoruz ve calişmaya başliyor
HTML:
mount -o remount,noexec,nosuid /dev/shm
3-) Makinemizdeki gereksiz servisleri kapatarak makinemizi rahatlatalım
PHP:
service cups stop chkconfig cups off service xfs stop chkconfig xfs off service atd stop chkconfig atd off service nfslock stop chkconfig nfslock off service canna stop chkconfig canna off service FreeWnn stop chkconfig FreeWnn off service cups-config-daemon stop chkconfig cups-config-daemon off service iiim stop chkconfig iiim off service mDNSResponder stop chkconfig mDNSResponder off service nifd stop chkconfig nifd off service rpcidmapd stop chkconfig rpcidmapd off service bluetooth stop chkconfig bluetooth off service anacron stop chkconfig anacron off service gpm stop chkconfig gpm off service saslauthd stop chkconfig saslauthd off service avahi-daemon stop chkconfig avahi-daemon off service avahi-dnsconfd stop chkconfig avahi-dnsconfd off service hidd stop chkconfig hidd off service pcscd stop chkconfig pcscd off service sbadm stop chkconfig sbadm off service webmin stop chkconfig webmin off service ossec stop chkconfig ossec off
Aynen bu şekilde yapıştırınız.
# Cpanel Guncellemesi #
SSH'den komutumuzu verelim
Kod:
/scripts/upcp
İşlem bitince
Kod:
/scripts/makecpphp
Bu işlemde bitince sırasıyla makineye komutları verelim ve tekrar acılsın makinemiz
Kod:
service cpanel restart /scripts/rebuildhttpdconf service httpd restart
Evet normalde ilk başlarda tek partta bitiririm diyordum fakat konu cok uzun oldu oyuzden 2 partta boluyorum diğer partide gun icerisinde yazip paylaşicagim bence o parti kesinlikle kacırmayın :s8: