Web server là một thành phần cực kỳ quan trọng không chỉ đối với các host, mà còn với cả khách hàng. Vì vậy, nó cần được giám sát chặt chẽ, và bảo mật với những cấu hình tốt nhất có thể. Vậy làm thế nào để cải thiện bảo mật cPanel, hãy đón đọc bài viết của Vietnix ngay sau đây!
Bảo mật SSH cho cPanel
SSH cho phép người dùng ở xa thực thi các lệnh và hệ điều hành thông qua một mạng không an toàn. Không có gì lạ khi các admin có quyền truy cập SSH. Tuy nhiên, SSH không nên được mở cho mọi người dùng ở trong tổ chức. Đôi khi, ta cũng có thể tắt SSH để có thể cải thiện bảo mật.
Dưới đây là một số mẹo đơn giản để có thể tăng bảo mật cPanel bằng SSH:
- Tạo SSH key bằng WebHost Manager (WHM) cho root user, sau đó disable xác thực mật khẩu cho SSH ở trong interface WHM Password Authorization Tweak.
- Disbale tính năng directory listing, nhằm tránh những kẻ tấn công xem các file được lưu trữ ở trong folder. Nếu ta không thực hiện việc này, các hacker có thể dễ dàng phát hiện được những file có thể truy cập công khai, hoặc sử dụng thông tin để thực hiện các cuộc tấn công sau này. Để có thể tắt directory listing, hãy đổi dòng sau ở trong file /etc/httpd/conf/httpd.conf. Trong file /etc/ssh/sshd_config, đổi cài đặt của cổng và giao thức SSH, ListenAddress, và PermitRootLogin. Trang web cPanel có một danh sách các giá trị được đề xuất nên sử dụng cho những cài đặt này. Ngoài ra, ta cũng có thể bỏ cổng tiêu chuẩn 22, và dùng một cổng khác thay thế.
Bảo mật Apache cho cPanel
Apache chính là trung tâm, là trái tim của dịch vụ web hosting trên Linux. Apache đã và vẫn đang là một trong những ứng dụng web server mã nguồn mở được yêu thích nhất kể từ lần đầu tiên được ra mắt vào năm 1999. Giống như bất kỳ phần mềm server nào khác, Apache cần được cập nhật và vá thường xuyên để bảo mật cPanel. Việc tuân thủ tốt những tiêu chuẩn tăng cường bảo mật chung sẽ giúp cải thiện đáng kể bảo mật cPanel. Bên cạnh đó, ta cũng có thể sử dụng EasyApache để quản lý cài đặt, cập nhật và cấu hình.
Và tất nhiên, disbale tính năng directory listing để những kẻ tấn công không thể thấy được các file được lưu trữ trong folder. Hãy thay đổi dòng sau ở trong file /etc/httpd/conf/httpd.conf:
Options Indexes FollowSymLinks
Đổi thành:
Options FollowSymLinks
Và cuối cùng là restart lại Apache.
- Disable các module không cần thiết, có khả năng mở ra những lỗ hổng bảo mật và làm tăng bề mặt tấn công.
- Disable server-info. Các hacker có thể sử dụng thông tin phiên bản server để xác định được các lỗ hổng bảo mật, từ đó bắt đầu thực hiện tấn công. Để cấu hình lại cài đặt này, hãy mở WHM và đi đến:
Service Configuration → Apache Configuration → Global Configuration Documentation
Trong cửa sổ cài đặt, disable các tính năng: signatures, eversion, tokens, tracing và enable bảo vệ symbolic link.
Quản lý hệ điều hành để cải thiện bảo mật cPanel
Ở trung tâm của hosting chính là hệ điều hành, vì vậy nó cần phải được cấu hình chính xác để có thể chống lại bất kỳ cuộc tấn công nào nhằm bảo vệ cPanel. Dĩ nhiên, không có chiến lược nào là an toàn 100% cả, nhưng ít nhất thì việc cấu hình đúng hệ điều hành sẽ giúp giảm đáng kể khả năng hệ thống bị xâm phạm. Nếu các hacker có thể xâm nhập được vào hệ điều hành, chúng cũng có thể đánh cắp key, dữ liệu, cài đặt malware và chiếm quyền điều hành server. Từ đó, dẫn đến vô số sự cố tấn công mạng nghiêm trọng.
Tuy nhiên, ta có thể sử dụng một số phương pháp để quản lý hệ điều hành, nhằm cải thiện bảo mật cPanel như sau:
- Luôn cập nhật hệ điều hành server, đặc biệt là sau khi nhà cung cấp phát hành các bản vá bảo mật. Lưu ý: cập nhật yum là mặc định ở trên cPanel.
- Tắt xác thực mật khẩu cho sshd.
- Chỉ mở các cổng cần thiết cho các kết nối client.
- Disable những ứng dụng không cần thiết cho hosting hay cho chức năng của server (chẳng hạn như bluetooth).
- Thường xuyên xem lại các file log để phát hiện bất kỳ sự xâm phạm bất thường nào, bởi vì đôi khi các hệ thống xâm nhập cũng khó có thể phát hiện được những xâm phạm này.
- Và tất nhiên, hãy luôn backup server của mình. Nếu có một sự cố an ninh mạng nào làm ảnh hưởng đến hệ điều hành, các bản backup vẫn có thể được sử dụng để khôi phục lại hệ điều hành. Tuy nhiên, hãy đảm bảo các bản backup này không chứa bất kỳ malware nào.
Vietnix cung cấp Hosting tốc độ cao giúp bạn tự động hóa việc sao lưu dữ liệu một cách dễ dàng và hiệu quả. Với tính năng backup tự động, bạn không cần phải lo lắng về việc sao lưu dữ liệu bằng tay một cách thủ công, giúp tiết kiệm thời gian và công sức. Hơn nữa, Vietnix đảm bảo rằng dữ liệu sẽ được backup tối thiểu 2 lần mỗi ngày và lưu trữ trong vòng 7 ngày. Bạn có thể khôi phục nhanh chóng dữ liệu khi cần thiết. Liên hệ với đội ngũ Vietnix để được tư vấn chi tiết về gói hosting tối ưu cho website của bạn.
Tăng cường phân vùng cho TMP Partition
Khi một ứng dụng được cài đặt, hoặc cần lưu trữ các file tạm thời, nó sẽ sử dụng tmp directory. Directory này được sử dụng cho mục đích lưu trữ tạm thời, và đôi khi các ứng dụng cũng sử dụng nó để tạo các lock file. Những file ở trong directory này có thể được sử dụng bởi hệ thống, và được xóa sau khi hệ thống reboot.
Nếu có bất kỳ kẻ tấn công nào xâm nhập vào server và chạy các ứng dụng, ứng dụng có thể lưu trữ nhiều file độc hại ở trong tmp directory này. Việc khóa tmp folder có thể giúp ngăn chặn những kẻ tấn công lưu trữ hay thực thi các file ở trong directory này, từ đó tăng cường bảo mật cPanel. Bên cạnh đó, ta cũng có thể cấu hình hệ điều hành Linux bằng một số phương pháp sau, để tăng cường bảo mật cho folder này:
- Tạo một phân vùng riêng cho tmp directory.
- Thay đổi phân vùng tmp thành non-executable (chmod 1777 /tmp).
- Ứng dụng cPanel có một script tùy chỉnh, giúp tăng cường bảo mật cho phân vùng tmp (/usr/local/cpanel/scripts/securetmp).
Để có thể hoàn toàn bảo mật phân vùng tmp, hãy sử dụng ví dụ script sau:
/usr/local/cpanel/scripts/securetmp --help
/usr/local/cpanel/scripts/securetmp - secure /tmp and /var/tmp
Các option:
- auto: skip interactive customization questions
- install: install & enable securetmp service
- uninstall: disable & uninstall securetmp service
- daemonize: run securetmp in background ( default true )
Cách sử dụng mẫu:
# run in interactive mode
> /usr/local/cpanel/scripts/securetmp
# disable interactive mode, run in background
> /usr/local/cpanel/scripts/securetmp --auto
# disable interactive mode, do not run in background
> /usr/local/cpanel/scripts/securetmp --auto --nodaemonize
Hạn chế dùng trình biên dịch hệ thống
Trong tính toán, các trình biên dịch (compiler) là một chương trình máy tính có khả năng dịch ngôn ngữ máy được viết bằng ngôn ngữ lập trình thành các mã nhị phân. Nếu ta để một trình biên dịch (chẳng hạn như gcc) ở trên server, những kẻ tấn công có thể biên dịch các script của riêng chúng.
Về bản chất, các hacker có thể tải lên mã độc và chạy chúng ở trên server. Các phần mềm antivirus sẽ rất khó có thể bắt được những mã độc này nếu đó là tấn công zero-day. Một web hosting server cũng không cần trình biên dịch, trừ khi nó đang lưu trữ các ứng dụng trong những trường hợp đặc biệt.
Vì mục đích an toàn trên không gian số và để bảo mật cPanel, ta nên gỡ bỏ hoặc hạn chế các trình biên dịch. Nếu không thể xóa hoàn toàn thì hãy hạn chế quyền truy cập, chỉ cho root user sử dụng.
Ngoài ra, ta cũng có thể disable các trình biên dịch thông qua WHM. Option Compiles Tweak cho phép ta disable các trình biên dịch với bất kỳ người dùng nào không có đặc quyền. Cài đặt Compiler Tweak có thể được tìm thấy ở trong Securiy Center của WHM.
Giám sát hệ thống liên tục để cải thiện cPanel
Bất kỳ sự cố nào ở trên web server đều có thể dẫn đến downtime cho người dùng, trong đó có cả người dùng cPanel. Một web server có thể ảnh hưởng xấu đến hàng trăm trang web của khách hàng, dẫn đến thiệt hại về nhiều mặt đối với các tổ chức, doanh nghiệp. Việc giám sát hệ thống liên quan đến việc theo dõi một số thành phần của hệ thống. Trong đó bao gồm cả hoạt động người dùng, hoạt động ứng dụng, hiệu suất và kết nối mạng.
Các admin có trách nhiệm xem xét các báo cáo giám sát để phát hiện bất kỳ điểm bất thường nào ở trong hệ thống để bảo mật cPanel tốt nhất. Tuy nhiên, các công cụ tốt cũng sẽ có thêm chức năng cảnh báo cho admin khi bát hiện những điểm bất thường.
Ngoài ra, ta cũng có thể sử dụng một số công cụ giám sát máy chủ để bảo mật cPanel. Nhưng chúng phải nhắm mục tiêu vào những thành phần phù hợp ở trên web server. Thật ra thì việc giám sát cũng là một yêu cầu bắt buộc đối với hầu hết các host. Nếu không có nó, downtime của hệ thống có thể rất dài, làm ảnh hưởng nghiêm trọng đến danh tiếng của tổ chức, giảm sự hài lòng của khách hàng, vi phạm các thỏa thuận dịch vụ,…
Sau đây là một số đối tượng cần giám sát trên server:
- Kết nối: Số lượng client và các kết nối server khác đến server. Các hacker có thể lợi dụng để gửi thông tin đến một server từ xa. Ngoài ra, ta cũng có thể tìm ra những kết nối không mong muốn, đang sử dụng tài nguyên của server.
- Request: Xác định số lượng request đến server để phân tích lưu lượng và lượng sử dụng tài nguyên.
- Uptime: Biết được khi nào server bị sập, giúp khắc phục sự cố nhanh chóng để đáp ứng được các thỏa thuận dịch vụ của tổ chức.
Quản lý địa chỉ IP giúp bảo mật cPanel
Một web server có địa chỉ IP công khai và riêng tư. Trong đó, địa chỉ IP công khai là cần thiết đối với các client online. Tuy nhiên địa chỉ IP riêng tư thì nên được giới hạn chỉ cho các admin và ứng dụng khách cần quyền truy cập vào host. Ví dụ: bất kỳ ai trong tổ chức trên subnet riêng tư đều nên có quyền truy cập vào server. Tuy nhiên, những người có địa chỉ IP riêng tư không nên có quyền truy cập vào tài nguyên server cụ thể.
Directive Apache Listen giúp giới hạn các cổng nghe với một địa chỉ IP nhất định. Theo mặc định, server sẽ nghe một cổng cụ thể trên tất cả interface (IP). Ví dụ: ta cũng có thể giới hạn cổng 80 thành chỉ địa chỉ IP bên ngoài. Directive httpd dưới đây yêu cầu Apacha nghe cổng 80 trên một IP bên ngoài:
Listen 203.0.113.8
Vô hiệu hóa mật mã mã hóa không an toàn bằng mật mã
Một lỗi phổ biến trên các web host server cũ là cho phép các bộ mã hóa không an toàn. Viện Tiêu chuẩn và Công nghệ Quốc gia (NIST) khuyến nghị rằng các server không nên hỗ trợ TLS phiên bản 1.0 hoặc 1.1. Chúng nên được cấu hình để hỗ trợ ít nhất là phiên bản 1.2 trở lên để bảo mật cPanel hiệu quả.
Khi web server hỗ trợ những phiên bản TLS cũ và dễ bị tấn công, các hacker ở vị trí thích hợp(như trên cùng một mạng hay Wi-Fi hostpot như một máy khách) có thể thực hiện một cuộc tấn công downgrade. Các phiên bản TLS cũ hơn thường được enable để hỗ trợ những ứng dụng cũ, nhưng lại thường có rủi ro bảo mật cao hơn đáng kể.
Do đó, ta có thể disable mật mã không an toàn ở trong WHM để nâng cao bảo mật cPanel bằng cách sau: Service Configuration → Apache Configuration → Global Configuration Documentation → SSL Cipher Suite.
Định cấu hình lại Firewall
Một hardware firewall có thể được dùng để whitelist các dịch vụ có sẵn ở trên server nhằm bảo mật cPanel. Bằng cách chặn các dịch vụ không mong muốn, các lưu lượng sẽ không thể đến được server trừ khi được chỉ định cụ thể ở trên server. Đối với web server, các cổng 80 và 443 là cần thiết, và ta có thể chặn tất cả lưu lượng khác đi đến server.
Web server có thể host các dịch vụ khác, và chúng cũng nên được xem xét cẩn thận trước khi mở các cổng trên tường lửa. Chẳng hạn, telnet và FTP thường không khả dụng vì chúng cho phép truyền dữ liệu trên các channel cleartext. Telnet thì tốt nhất là nên bị chặn. Tuy nhiên, ta cũng có thể cung cấp SFTP (port 22) như một tùy chọn cho người dùng muốn quản lý file bằng giao thức FTP.
>> Xem thêm: FTP là gì?
Thêm Web Application Firewall (WAF) để bảo mật cPanel tốt hơn
WAF giúp bảo vệ web server khỏi những cuộc tấn công dựa trên ứng dụng. Chẳng hạn, một WAF sẽ giúp phát hiện các input SQL độc hại từ một biểu mẫu web. Những kẻ tấn công có rất nhiêu loại hình tấn công dựa trên ứng dụng để lựa chọn. Vì vậy, ta cần có một WAF để có thể phát hiện các lưu lượng độc hại và cảnh báo kịp thời cho admin, giúp bảo mật cPanel tốt nhất.
Bên cạnh đó, các báo cáo của WAF cũng cung cấp một cái nhìn tổng quan về những yêu cầu lưu lượng để admin có thể xác định một host, địa chỉ IP hay client độc hại.
Bảo mật lớp ứng dụng bao gồm nhiều thứ hơn là là chỉ có web input. WAF bảo vệ việc truyền cookie bằng cách yêu cầu chúng phải được mã hóa. Đồng thời WAF cũng kiểm tra virus trong quá trình upload file, chặn truyền tải đường dẫn, buộc kết nối phải được mã hóa TLS và ngăn chặn tấn công XSS. Không cần phải bàn cãi, WAF là một công cụ cung cấp khả năng bảo mật mạng toàn diện trong các mỗi trường có nhiều ứng dụng, gồm cả những ứng dụng không thể được xác minh bởi admin.
Bên cạnh đó, ta không thể làm việc với WAF mà bỏ quên ModSecurity. ModSecurity là một WAF dành cho các web server giám sát lưu lượng truy cập trong thời gian thực. Công cụ này giám sát những bất thường ở trong lớp ứng dụng chứ không phải ở lớp mạng như các hardware firewall truyền thống. Các lệnh cài đặt phụ thuộc vào bản phân phối hiện có, chẳng hạn như CentOS 7:
sudo yum install mod_security
Sau khi cài đặt xong ModSecurity, ta chỉ cần restart lại Apache.
ModSecurity có rất nhiều nhà cung cấp quy tắc để sử dụng với WAF. Chẳng hạn như OWASP. Tuy nhiên, việc cấu hình các quy tắc tường lửa cũng còn phụ thuộc vào ứng dụng mà server đang chạy, và đôi khi cũng cần một số kỹ năng nâng cao khác.
Bảo mật Password
Password là gì? Password chính là mật khẩu mà bạn cài đặt cho tài khoản của mình. Để bảo mật cPanel, thì ta cần bảo mật tốt password ở trên hệ thống, cho dù đó là của khách hàng hay admin. Password an toàn cũng là một thành phần quan trọng trong việc tuân thủ các thủ tục an ninh. Một password phức tạp cần có độ dài ít nhất là 10 ký tự đối với những ứng dụng lưu trữ thông tin quan trọng. Đối với admin và các ứng dụng cực kỳ nhạy cảm, thì password cần có độ dài ít nhất là 12 ký tự.
Tuy vậy, password phức tạp vẫn chưa đủ an toàn nếu được lưu trữ bằng mật mã không an toàn. Ví dụ, password nên được băm bằng MD5 và lưu trữ trong một database. Ngoài ra cũng nên được salt và hash bằng SHA2 hay SHA3, hoặc bất kỳ mật mã an toàn nào khác được NIST phê duyệt.
Bảo mật Web và Email
Các nhân viên nội bộ chính là một mục tiêu lý tưởng cho các tội phạm trên không gian số, và phishing là một công cụ chính để thực hiện tấn công. Vì vjây, các email với nội dung hay file đính kèm đáng ngờ cần được giám sát chặt chẽ. Một tài liệu có các macro độc hại sẽ download malware, cài đặt chúng trên mạng và tạo downtime cho toàn bộ tổ chức.
Các cuộc tấn công ransomware tiếp tục gia tăng trong những năm gần đây và làm tê liệt cả những trang chính phủ, doanh nghiệp. Từ đó yêu cầu thanh toán để những doanh nghiệp có thể truy cập lại các file của mình. Mới đây, ransomware thậm chí đã làm sập một đường dẫn khí gas lớn ở Mỹ, nơi cung cấp đến 45% lượng nhiên liệu tiêu thụ ở bờ biển phía đông. Đây cũng chính là một mối đe dọa vô cùng to lớn với bất kỳ tổ chức nào.
Các email filter ngăn chặn nhiều email độc hại đến hộp thư của người dùng. Các web content filter hoạt động cùng với bộ lọc email và ngăn người dùng truy cập vào những nội dung web độc hại. Các tổ chức cũng nên triển khai SPF (Sender Policy Framework) và DMARC (Domain-based Message Authentication, Reporting and Conformance) để ngăn những kẻ tấn công giả mạo tên miền của tổ chức trong các chiến dịch phishing.
Cập nhật ứng dụng kịp thời
Giống như bất kỳ ứng dụng nào khác, việc cập nhật cPanel thường xuyên sẽ giúp loại bỏ các hỗ hổng bảo mật được phát hiện ở trong những phiên bản cũ, end-of-life (EOL) hay phiên bản không còn được hỗ trợ. Việc cập nhật ứng dụng cũng là một trong những cách bảo mật cPanel đơn giản nhất.
Các phiên bản EOL cũ hơn sẽ không còn được nhận các bản vá bảo mật nữa. do đó, server và các trang khách hàng có thể dễ dàng bị tấn công bởi các hành vi khai thác mới. Ngoài ra, cPanel cũng kiểm soát rất nhiều khía cạnh khác nhau của các trang web khách hàng, nên nó cần phải được cập nhật càng sớm càng tốt, ngay sau khi phiên bản mới được phát hành.
Ta có thể cập nhật cPanel trực tiếp từ WHM, nhưng hầu hết các admin sẽ cập nhật thủ công thông qua command line. Trước tiên, chạy lệnh sau để xem phiên bản cPanel hiện tại:
/usr/local/cpanel/cpanel -V
Nếu cảm thấy ta cần cập nhật lên phiên bản mới, chạy lệnh sau để cài đặt phiên bản mới nhất của cPanel:
/usr/local/cpanel/scripts/upcp
Bật tính năng bảo vệ Brute Force Attack
Ngay cả khi đã triển khai sử dụng password an toàn và mạnh, những kẻ tấn công vẫn hoàn toàn có thể cố gắng “đoán” thông tin đăng nhập được lưu trữ ở trên web server. Nó có thể là thông tin đăng nhập của admin hay password khách hàng. Các hacker sẽ sử dụng những password đã được tài xuống, cùng với từ điển các mật khẩu phổ biến, kết hợp với cả những thông tin tài khoản khác đã bị tấn công trong Brute Force.
Ứng dụng cPanel có cơ chế bảo vệ brute-force, tên là cPHulk. Công cụ này có thể được kích hoạt trên web hosting server để giảm thiểu tấn công brute-force. Công cụ này có nhiệm vụ giám sát một số cổng liên quan đến những bản scan brute-force, và chặn các địa chỉ IP đang thực hiện tấn công.
Bên cạnh đó, Imunify360 cũng cung cấp khả năng bảo vệ brute-force tương tự, cùng nhiều tính năng quan trọng khác nữa. Imunify360 tiện lợi hơn, bảo vệ triệt để hơn. Công cụ này không chỉ có chức năng auto-malware mà còn kết hợp cả những thành phần vô cùng quan trọng khác, có thể kể đến như: hệ thống IPS, Linux malware scanner, WAF, Anti-vius, Networ Firewall, Patch Management,…
Thực hiện sao lưu (Backup)
Sao lưu là một phần quan trọng trong an ninh mạng, nhằm đảm bảo tính liên tục của doanh nghiệp và khôi phục nhanh chóng sau những cuộc tấn công. Mọi admin đều nên có những kế hoạch dự phòng, đặt thời gian backup thường xuyên (chẳng hạn như 2 tuần, hay 1 tháng 1 lần,…) để bảo mật cPanel tốt nhất. Ứng dụng cPanel có một công cụ backup giúp backup phân vùng hay toàn bộ các file. Việc backup nên được thực hiện thường xuyên.
Ta có thể sử dụng Backup Wizard ở trong phần Files của ứng dụng cPanel. Các bản backup nên được lưu trữ ở các vị trí an toàn. Những bản backup thường chứa dữ liệu có giá trị, nên tốt nhất là tạo cả bản backup phân vùng lẫn toàn bộ.
Thiết lập Công cụ bảo mật cho cPanel
Các website cPanel có rất nhiều plugin khả dụng cho mục đích bảo mật. Các công này là giải pháp của bên thứ ba, trong đó phổ biến nhất là plugin ConfigServer Security and Firewall (CSF). Công cụ này hoạt động tương tự như một firewall, giúp kiểm soát lưu lượng, ngăn chặn tấn công DDoS và theo dõi kết nối mạng.
Bên cạnh đó còn có một số công cụ bảo mật cPanel mạnh mẽ kahcs như Imunify AV (phần mềm diệt virus miễn phí cho Linux), Imunify360, ImunifyAV+,… Tất cả những công cụ này đều có những điểm mạnh khác nhau, và đều cung cấp những phương pháp hiệu quả nhất để cải thiện bảo mật cPanel trên web server.