Được phân loại dưới mục Nginx, Gzip, Linux - ca cuoc the thao
Quy trình kích hoạt Gzip cho Nginx
Trong hệ thống của tôi, tập tin cấu hình của Nginx nằm ở thư mục /etc/nginx/conf.d
, và tôi đã chỉnh sửa file default.conf
. Các bạn có thể tùy chọn tìm kiếm và chỉnh sửa các file cấu hình khác theo nhu cầu riêng. Trong file default.conf
, tôi thêm vào những dòng sau đây:
1gzip on;
2gzip_min_length 1k;
3gzip_buffers 4 16k;
4#gzip_http_version 1.0;
5gzip_comp_level 2;
6gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
7gzip_vary off;
8gzip_disable "MSIE [1-6]\.";
Dòng thứ nhất: Kích hoạt tính năng Gzip.
Dòng thứ hai: Đặt ngưỡng không nén cho các tệp nhỏ hơn 1KB. Thông thường, bạn không cần thay đổi giá trị này.
Dòng thứ ba: Cấu hình bộ đệm (buffer). Bạn cũng không cần phải điều chỉnh nếu không hiểu rõ về nó.
Dòng thứ tư: Nếu sử dụng proxy ngược (reverse proxy) và giao tiếp cuối cùng là HTTP/1.0, dòng này sẽ được bỏ qua. Mặc định là HTTP/1.1, vì vậy chỉ cần giữ nguyên hoặc chú thích nếu không cần thiết.
Dòng thứ năm: Mức độ nén từ 1 đến 10. Số càng cao, hiệu quả nén càng tốt nhưng thời gian xử lý lâu hơn. Tùy ý điều chỉnh theo mong muốn.
Dòng thứ sáu: Danh sách các kiểu tệp cần nén. Có thể bổ sung thêm các loại tệp nếu thấy cần thiết. JavaScript có hai cách viết, nên tốt nhất là thêm cả hai để tránh trường hợp không nén được.
Dòng thứ bảy: Liên quan đến dịch vụ lưu trữ tạm thời như Squid. Nếu bật (on
), header sẽ thêm "Vary: Accept-Encoding". Theo nhu cầu, bạn tự quyết định bật hay tắt tùy chọn này.
Dòng thứ tám: IE6 không hỗ trợ tốt Gzip, do đó chúng ta sẽ vô hiệu hóa tính năng này đối với trình duyệt này.
Tiếp theo, hãy khởi động lại dịch vụ Nginx:
1service nginx restart
Sau khi hoàn tất, kiểm tra kết quả:
1Hỗ trợ nén: Có
2Kiểu nén: gzip
3Kích thước tệp gốc: 13480 byte
4Kích thước tệp sau khi nén: 4828 byte
5Tỷ lệ nén: 64.18%
Hiệu quả thật sự rất đáng kể! Website tải gần như tức thì!
Một số lệnh hữu ích
Trong vài ngày gần đây, tôi nhận thấy có nhiều người cố gắng truy cập trái phép vào VPS của mình. Dưới đây là hai lệnh giúp tôi giám sát tình hình:
- Xem danh sách IP và số lần thử đăng nhập thất bại qua SSH:
1cat /var/log/secure | awk '/Failed/{print $(NF-3)}' | sort | uniq -c | awk '{print $2" = "$1;}'
- Kiểm tra danh sách IP đã đăng nhập thành công:
1who /var/log/wtmp
Lưu ý quan trọng
Việc sử dụng Gzip có thể làm tăng tải trên CPU, nhưng đối với website ít người truy cập như của tôi, điều này không đáng lo ngại.
Tình hình bảo mật hiện tại
Tôi vừa kiểm tra lại và phát hiện có tới 55 lần thử đăng nhập trái phép. Dưới đây là danh sách IP liên quan:
1103.41.124.103 = 2214
2103.41.124.21 = 2214
3103.41.124.26 = 18
4103.41.124.27 = 12
5103.41.124.29 = 4725
6103.41.124.46 = 666
7103.41.124.48 = 705
8103.41.124.50 = 9
9103.41.124.58 = 12
10104.130.124.127 = 21
11104.41.131.157 = 12
12115.231.222.45 = 12
13115.238.72.33 = 7
14166.62.33.250 = 17
15176.58.103.233 = 13 // (IP này thuộc RIPE, khó xác định địa điểm)
16182.18.134.5 = 9
17222.219.187.9 = 11
1861.183.1.8 = 1
1962.210.182.90 = 10
2091.83.237.230 = 4
2194.124.205.140 = 1
Tôi đã thử tìm thông tin về các IP này bằng Zoomeye nhưng không thu được gì cụ thể.
Hy vọng bài viết này giúp ích cho bạn!