Một số cách bảo mật webserver chạy php cho các sysadmin

6/03/2017

Bài viết này VDO sẽ chia sẻ với các bạn một số cách bảo mật webserver chạy php cho các sysadmin, hy vọng với những chia sẻ nhỏ dưới đây sẽ giúp đỡ được ít nhiều cho các webmaster

Trước hết hãy đề cập đến các lỗi thường bị khai thác bây giờ để tìm ra cách chống đỡ
Phổ biến và nguy hiểm nhất là XSS, SQL injection, File upload,file includes, hàm eval(),csrf,etc nhiều lắm các bạn tự tìm hiểu thêm

Mình sẽ demo config tại 1 server sạch chưa cài gì

Phần 1 :

1> Tìm cách module không cần thiết và xóa bỏ bớt đi

[root@www2047uc ~]# php -m

[PHP Modules]
bz2
calendar
Core
ctype
curl
date
ereg
exif
fileinfo
filter
ftp
gettext
gmp
hash
iconv
imap
json
libxml
mbstring
mysql
mysqli
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
readline
Reflection
session
shmop
SimpleXML
sockets
SPL
sqlite3
standard
tokenizer
xml
zip
zlib
[Zend Modules]

ở ví dụ này mình thấy sqlite,readline là k cần lắm nên có để disable hoặc xóa

rm /etc/php.d/sqlite3.ini

(readline)

hoặc

Mã:

v /etc/php.d/sqlite3.ini /etc/php.d/sqlite3.disabl

e (readline)

Hoặc thay vì xóa thì cài bản php chỉ có những module mình cần

Mã:

./configure –with-libdir=lib64 –with-gd –with-mysql –prefix=/usr –exec-prefix=/usr –bindir=/usr/bin –sbindir=/usr/sbin –sysconfdir=/etc –datadir=/usr/share –includedir=/usr/include –libexecdir=/usr/libexec –localstatedir=/var –sharedstatedir=/usr/com –mandir=/usr/share/man –infodir=/usr/share/info –cache-file=../config.cache –with-config-file-path=/etc –with-config-file-scan-dir=/etc/php.d –enable-fastcgi –enable-force-cgi-redirect

cái này mình cài luôn fastcgi

2. Fake http banner ( tự tìm hiểu thêm )

3. Log tất cả các lỗi phát sinh của PHP

Mở /etc/php.d/security.ini thêm vào

Mã:

display_errors=Off

log_errors=On

error_log=/var/log/httpd/php_scripts_error.log

4. Tốt nhất là dis luôn upload :

vẫn sửa trong file kia nha file_uploads=Off hoặc nếu cho thì hoặc set max upload

file_uploads=On# user can only upload upto 1MB via php

upload_max_filesize=1M

5. bật sql safe mode

Mã:

sql.safe_mode=On

Khi set cái này mysql_connect() và mysql_pconnect() sẽ không nhận bất thì đối số nào được truyền tới chúng.

cái này mà dùng wp là xịt đấy

và gợi ý nữa là thay vì dùng magic_quotes thì dùng mysql_escape_string() (các pro đã chứng minh)

6. Dis các hàm nguy hiểm

Mã:

disable_functions =exec,passthru,shell_exec,system,proc_open,popen,c url_exec,curl_multi_exec,parse_ini_file,show_sourc e

7.Cài fastcgi

FastCGI giảm hiệu suất của server tuy nhiên lại làm tăng tốc độ của PHP. và giúp ngăn chặn việc gọi shell trực tiếp qua cgi.force_redirect

Mã:

cgi.force_redirect=On

8. Bảo vệ Apache, PHP, and, MySQL Configuration Files thay vì dùng chmod ở đây mình dùng chattr dùng ở các file sau

Mã:

# chattr +i /etc/php.ini

# chattr +i /etc/php.d/*

# chattr +i /etc/my.ini

# chattr +i /etc/httpd/conf/httpd.conf

# chattr +i /etc/

Hi vọng với bài viết trên mình cũng đã giúp đỡ được ít nhiều cho các webmaster

Nguồn : Support / Diendanmaychu.vn

Tag : Thuê máy chủ giá rẻ, cho thuê máy chủ ảo giá rẻ, chỗ đặt máy chủ uy tín

Một số cách bảo mật webserver chạy php cho các sysadmin
Rate this post

About admin

Thanh Hồng là một hot blogger công nghệ của VDO. Cô đã có 5 năm kinh nghiệm làm việc tại phòng Marketting và Sale tại VDO. Cô sở hữu rất nhiều website và blog liên quan đến công nghệ, dịch vụ máy chủ, sản phẩm worktion, phần mềm bản quyền,…Cô đã cố gắng học hỏi, tích lũy và truyền đạt hết những kinh nghiệm đó trong các bài viết chia sẻ của mình. Blog của Thanh Hồng là một trong những nguồn thông tin tốt nhất giúp bạn lựa chọn được một sản phẩm, dịch vụ công nghệ hoàn hảo. Đặc biệt vì đam mê tìm hiểu về công nghệ nên cô đã dành rất nhiều thời gian đi cập nhật các tin tức công nghệ mới, các giải pháp mới, hoàn hảo nhất phù hợp cho nhiều mô hình doanh nghiệp và chia sẻ chúng theo quan điểm thú vị của riêng mình.

Hotline tư vấn miễn phí