Virtualmin'i Daha Güvenli Hale Getirmek

Gerekli ayarlamları yapınca daha güvenli bir Virtualmin ortaya çıkacaktır...

Sunucunun Zone Kayıtlarının Listelenmesini Engelleyin

Bind Server / Edit Config Files

Virtualmin'i Daha Güvenli Hale Getirmek

dig @ns1.domain.com domain.com axfr komutu ile Transfer Failed mesajı almanız şart.

allow-transfer {"none";};

 

Virtualmin Bağlantı Portunu Değiştirin

Virtualmin'i Daha Güvenli Hale Getirmek
Sol menüden yukarda işağretli olan bölümü seçiniz.

Virtualmin'i Daha Güvenli Hale Getirmek
Ports and Address bölümüne tıklayın

Virtualmin'i Daha Güvenli Hale Getirmek

10000 yazan bölümü 65536'a kadar herhangi bir sayı ile değiştirin ancak bilinen portları kullanmayın.

FTP Kullanıcılarını Sınırlayın

Öncelikle Host hizmeti verdiğiniz bir kullanıcınızın FTP ile bağlanarak tüm sistem dosyalarınızı ve diğer host hizmeti veridiğiniz sitelerini gezdiğini fark etmişsinizdir. Bu durumu önlemek için şunları yapmalısınız.

Virtualmin'i Daha Güvenli Hale Getirmek

Yukardaki menüdeki FTP Directory Restrictions'a girip seçenekleri aşağıdaki gibi seçmeli ve Save yapmalısınız.

Virtualmin'i Daha Güvenli Hale Getirmek

Virtualmin'i Daha Güvenli Hale Getirmek

Evet şimdi host hizmeti verdiğiniz kullanıcılar sadecekendilerine ait alanlarda gezeceklerdir.

PHP'yi Daha Güvenli Kullanmak

Webmin üzerinde Others menüsü altında PHP Configuration bölümüne tıklıyoruz.

Virtualmin'i Daha Güvenli Hale Getirmek

Menüden Edit Configuration Manually'e griyoruz.

Virtualmin'i Daha Güvenli Hale Getirmek

Burada php.ini dosyasının şu parametrelerini şunlarla değiştirmekte fayda var. (Virgüller arasında boşluk yok)

Normalde Olan:

; This directive allows you to disable certain functions for security reasons.
; It receives a comma-delimited list of function names. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
; http://php.net/disable-functions
disable_functions = pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,

Tavsiye Edilen:

; This directive allows you to disable certain functions for security reasons.
; It receives a comma-delimited list of function names. This directive is
; *NOT* affected by whether Safe Mode is turned On or Off.
; http://php.net/disable-functions
disable_functions=exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,ini_alter,dl,popen,popen,pcntl_exec,socket_accept,socket_bind,socket_clear_error,socket_close,socket_connect,socket_create_listen,socket_create_pair,socket_create,socket_get_option,socket_getpeername,socket_getsockname,socket_last_error,socket_listen,socket_read,socket_recv,socket_recvfrom,socket_select,socket_send,socket_sendto,socket_set_block,socket_set_nonblock,socket_set_option,socket_shutdown,socket_strerror,socket_write,stream_socket_client,stream_socket_server,pfsockopen,stream_set_timeout,disk_total_space,disk_free_space,chown,diskfreespace,getrusage,get_current_user,set_time_limit,getmyuid,getmypid,dl,leak,listen,chgrp,link,symlink,dlopen,proc_nice,proc_get_stats,proc_terminate,shell_exec,sh2_exec,posix_getpwuid,posix_getgrgid,posix_kill,ini_restore,mkfifo,dbmopen,dbase_open,filepro,filepro_rowcount,posix_mkfifo,p
utenv,geoip_open,sleep,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,
 

PHP versiyon bilgilerini kullanıcıdan gizliyoruz:

; Decides whether PHP may expose the fact that it is installed on the server
(e.gby adding its signature to the Web server header).  It is no security
; threat in any way, but it makes it possible to determine whether you use PHP
; on your server or not.
; http://php.net/expose-php
expose_php = Off
 

 

 CSF & LF Linux Firewallı Kurun

Şuradaki yönergeleri kullanarak yükleyebilirsiniz.

Spam Maillerin 15 Günden Fazla Saklanmasını Engelleyin

Virtualmin'i Daha Güvenli Hale Getirmek

Şu ayarları unutmayın (Login Failied LF)

Virtualmin'i Daha Güvenli Hale GetirmekVirtualmin'i Daha Güvenli Hale GetirmekVirtualmin'i Daha Güvenli Hale Getirmek

CT_LIMIT bir IP'den izin verilen maksimum bağlantı sayısıdır, bu değeri sunucu gereksiniminize göre ayarlayabilirsiniz.
CT_LIMIT =100

Bağlantı izleme aralığını ayarlayın.
CT_INTERVAL =30

Gözetim altına alınacak IP sayısına limit verin
DENY_IP_LIMIT = 5000

Otomatik Spam Mailleri Silin

Virtualmin'i Daha Güvenli Hale Getirmek

 

FTP Yerine SFTP Kullanın

Bunun için sisteme (libssh2-php) php-ssh2 paketini kurun.

Virtualmin'i Daha Güvenli Hale Getirmek

Apache sunucusunu yeniden başlattığınızda aşağıdaki gibi bir Registered PHP Streams görmelisiniz:

Virtualmin'i Daha Güvenli Hale Getirmek

 

Apache Sunucu Versiyon Bilgilerini Kullanıcılardan Gizleyin

Apache Header bilgilerini kapatmalısınız. Yani hangi apache kullanıldığı ve versiyon bilgisini kapatmalısınız

etc/apache2/conf-available/security.conf dosyasına şu satırları ekleyin:

ServerSignature Off
ServerTokens ProductOnly

 

Virtualmin'i Daha Güvenli Hale Getirmek

Webmin ekranında ayarın bulunduğu bölüm (Miscellaneous Bölümünde)

Virtualmin'i Daha Güvenli Hale Getirmek

 

Az önce bahsettiğiniz tüm adımları uyguladıktan sonra da eklemek istiyorum. Ayrıca tüm sunucularıma aşağıdakileri de ekliyorum.

SSH'ye yönelik brute force saldırılarını durdurmak için:

http://denyhosts.sourceforge.net/

SSH, FTP, SMTP, Apache, vb. İçin brute force saldırılarını durdurmak istiyorsanız:

http://www.fail2ban.org/wiki/index.php/Main_Page

Host Tabanlı Saldırı Tespiti (Host Based Intrusion Detection) :

http://www.ossec.net/

Chrooted SFTP şununla:

http://www.howtoforge.com/mysecureshell_sftp_debian_etch

FTP:

Ben vsftpd kullanmayı tercih ediyorum, sonra kullanıcılarınızı aldatıyorum.

Biraz tartışmalı bir yaklaşım, en çok hack tipi girişimlerde bulunulan ülkelerden tüm IP bloklarını engelliyorum.

Günlüklerinizi incelemeyi unutmayın.

Hack olması durumunda kurtarmak için iyi bir yedek alın.

Postfix'e SASL ile  Yapılan DOS Saldırılarını Durudurun

 Virtualmin'i Daha Güvenli Hale GetirmekVirtualmin'i Daha Güvenli Hale GetirmekEn sağdaki Edit Config Files'a tıklayıp aşağıdaki satırları ekleyin.Virtualmin'i Daha Güvenli Hale Getirmek

#Ekleme
smtpd_sender_restrictions = permit_mynetworks permit_sasl_authenticated reject_unknown_sender_domain reject_unknown_reverse_client_hostname reject_unknown_client_hostname
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks permit_sasl_authenticated reject_invalid_helo_hostname reject_non_fqdn_helo_hostname reject_unknown_helo_hostname
smtpd_error_sleep_time = 1s
smtpd_soft_error_limit = 3
smtpd_hard_error_limit = 2
smtpd_client_connection_count_limit = 2
smtpd_client_connection_rate_limit = 2
smtpd_client_new_tls_session_rate_limit = 2
smtp_dns_support_level = dnssec
message_size_limit = 1024000

  En son message_size_limit ile en fazla 1 MB boyutunda mail kabul ettiğimizi belirtmiş oldukVirtualmin'i Daha Güvenli Hale Getirmek

Usermin'i Kapatın

Virtualmin'i Daha Güvenli Hale Getirmek

BIND DNS Dosyaları

Virtualmin'i Daha Güvenli Hale Getirmek

root ile SSH Login İşlemlerini Kapatın

Virtualmin'i Daha Güvenli Hale Getirmek

Virtualmin'i Daha Güvenli Hale GetirmekVirtualmin'i Daha Güvenli Hale Getirmek

 

Sunucuyu Test

Aşağıdaki test siteleri ile sunucunuzu test edin.

Kullanılmayan Servisleri Kapatın

 

 

Kaynaklar

 

Yorumunuzu Ekleyin


Yükleniyor...
Yükleniyor...