NỘI DUNG

Làm thế nào để bảo mật Nginx bằng Let’s Encrypt trên CentOS 7?

Ngày đăng:13/03/2025
Lượt xem

Đánh giá

5/5 - (196 bình chọn)

Bảo mật Nginx bằng SSL/TLS là một bước quan trọng để đảm bảo an toàn cho website. Let’s Encrypt cung cấp chứng chỉ SSL miễn phí, giúp mã hóa dữ liệu truyền giữa máy chủ và người dùng, ngăn chặn các cuộc tấn công đánh cắp thông tin. Trong bài viết này, mình sẽ hướng dẫn bạn cách bảo mật Nginx bằng Let’s Encrypt trên CentOS 7 đơn giản và hiệu quả.

Những điểm chính

  • Chuẩn bị cho việc bảo mật Nginx với Let’s Encrypt trên CentOS 7: Nắm được các điều kiện tiên quyết cần thiết trước khi bắt đầu, giúp quá trình cài đặt diễn ra suôn sẻ, tránh gặp lỗi.
  • Hướng dẫn bảo mật Nginx bằng Let’s Encrypt trên CentOS 7: Bao gồm các bước như cài đặt Certbot Let’s Encrypt Client, cài đặt và cấu hình Nginx, cập nhật tường lửa, lấy chứng chỉ,…
  • Giới thiệu về Vietnix: Có thêm lựa chọn khi tìm kiếm nhà cung cấp dịch vụ VPS uy tín, chất lượng.

Cần chuẩn bị gì để có thể bảo mật Nginx bằng Let’s Encrypt trên CentOS 7?

Để bảo mật Nginx bằng Let’s Encrypt trên CentOS 7, bạn cần chuẩn bị những điều sau:

  • Máy chủ CentOS 7: Bạn cần một máy chủ chạy CentOS 7 với một người dùng không phải root nhưng có quyền sudo để thực hiện các lệnh quản trị. Nếu chưa có máy chủ, bạn có thể tham khảo các gói VPS của Vietnix như VPS Giá Rẻ, VPS NVMe, VPS SSDVPS AMD. Vietnix cung cấp đa dạng cấu hình và hỗ trợ nhiều hệ điều hành, bao gồm CentOS, Ubuntu, Debian, Windows Server,… cho phép bạn tùy chỉnh và cài đặt phần mềm theo nhu cầu.
  • Tên miền: Bạn cần sở hữu một tên miền cho website của mình. Nếu chưa có, bạn có thể đăng ký tên miền trực tiếp tại Vietnix.
  • Cấu hình DNS: Đảm bảo DNS của tên miền đã được trỏ đến địa chỉ IP của máy chủ CentOS 7. Let’s Encrypt sẽ xác minh quyền sở hữu tên miền của bạn trong quá trình cấp chứng chỉ. Ví dụ, nếu muốn lấy chứng chỉ cho example.com và www.example.com, cả hai bản ghi DNS này phải trỏ đến máy chủ của bạn.

Sau khi đã chuẩn bị đầy đủ, hãy cùng mình tiến hành cài đặt Let’s Encrypt để bảo mật Nginx trên CentOS 7 theo hướng dẫn dưới đây.

Cần chuẩn bị gì để có thể bảo mật Nginx bằng Let’s Encrypt trên CentOS 7
Cần chuẩn bị gì để có thể bảo mật Nginx bằng Let’s Encrypt trên CentOS 7

Bước 1: Cài đặt Certbot Let’s Encrypt Client

Bước đầu tiên khi sử dụng Let’s Encrypt để lấy chứng chỉ SSL là cài đặt certbot trên máy chủ của bạn. Cách tốt nhất là cài đặt thông qua kho lưu trữ EPEL.

Bật cho phép truy cập vào kho lưu trữ EPEL trên máy chủ của bạn bằng cách nhập:

sudo yum install epel-release

Sau khi kho lưu trữ đã được kích hoạt, bạn có thể lấy gói certbot-nginx bằng cách nhập:

sudo yum install certbot-nginx

Phần mềm certbot Let’s Encrypt client hiện đã được cài đặt và sẵn sàng để sử dụng.

Bước 2: Cài đặt và cấu hình Nginx

Nếu chưa cài đặt Nginx bạn có thể cài đặt ngay bây giờ. Kho lưu trữ EPEL đã được kích hoạt từ phần trước đó, vì vậy bạn có thể cài đặt Nginx bằng cách nhập:

sudo yum install nginx

Sau đó, bắt đầu sử dụng Nginx bằng systemctl:

sudo systemctl start nginx

Certbot có thể tự động cấu hình SSL cho Nginx nhưng cần phải tìm server block chính xác trong cấu hình của bạn. Điều này được thực hiện bằng cách tìm kiếm server_name phù hợp với tên miền bạn muốn cấp chứng chỉ. Nếu bạn sử dụng bản cài đặt mới của Nginx, bạn có thể cập nhật file cấu hình mặc định bằng vi hoặc bất kỳ trình chỉnh sửa văn bản nào :

sudo vi /etc/nginx/nginx.conf

Tìm dòng server_name hiện có:

server_name _;

Thay thế dấu gạch dưới _ ở cuối bằng tên miền của bạn:

server_name example.com www.example.com;

Lưu file và thoát khỏi trình chỉnh sửa. Nếu bạn đang sử dụng vi, nhập :x, sau đó nhập y khi được hỏi để lưu và thoát. Xác minh các chỉnh sửa của cấu hình bằng cách nhập:

sudo nginx -t

Nếu chạy không xuất hiện lỗi, bạn hãy tải lại Nginx để tải cấu hình mới:

sudo systemctl reload nginx

Certbot hiện có thể tìm thấy và cập nhật server block chính xác. Tiếp theo, bạn sẽ cập nhật tường lửa cho phép lưu lượng HTTPS.

Bước 3: Cập nhật tường lửa

Nếu bạn đã bật tường lửa, hãy đảm bảo cổng 80 và 443 mở cho phép lưu lượng vào từ hai cổng này. Nếu bạn không chạy tường lửa thì có thể bỏ qua bước này.

Nếu bạn đang chạy tường lửa firewalld, bạn có thể mở các cổng trên bằng cách nhập lệnh:

sudo firewall-cmd --add-service=http
sudo firewall-cmd --add-service=https
sudo firewall-cmd --runtime-to-permanent

Nếu bạn đang chạy tường lửa iptables, các lệnh cần chạy phụ thuộc nhiều vào bộ quy tắc. Để đặt các quy tắc ban đầu, bạn có thể thêm quyền truy cập HTTP và HTTPS thông qua lệnh:

sudo iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT

Bây giờ bạn đã sẵn sàng chạy Certbot và lấy chứng chỉ.

Bước 4: Lấy chứng chỉ

Certbot cung cấp nhiều cách để lấy chứng chỉ SSL thông qua các plugin khác nhau. Plugin Nginx sẽ tự động cấu hình lại Nginx và tải lại cấu hình khi cần thiết:

sudo certbot --nginx -d example.com -d www.example.com

Đây là lệnh chạy certbot với plugin --ngin dùng -d chỉ định các tên mà bạn muốn áp dụng chứng chỉ.

Nếu đây là lần đầu tiên chạy certbot, bạn sẽ được nhắc nhập địa chỉ email và đồng ý với các điều khoản dịch vụ. Sau đó, certbot sẽ liên lạc với máy chủ Let’s Encrypt để chạy xác minh bạn kiểm soát miền mà bạn yêu cầu chứng chỉ.

Cấu hình sẽ được cập nhật và Nginx sẽ tải lại để lấy cấu hình mới. certbot sẽ kết thúc với một thông báo quá trình đã thành công và nơi lưu trữ chứng chỉ của bạn:

Output
IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/your_domain/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/your_domain/privkey.pem
   Your certificate will expire on 2022-10-20. To obtain a new or
   tweaked version of this certificate in the future, simply run
   certbot again with the "certonly" option. To non-interactively
   renew *all* of your certificates, run "certbot renew"
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Chứng chỉ của bạn được tải xuống, cài đặt và hoạt động. Hãy thử tải lại trang web bằng https:// và chú ý đến chỉ báo bảo mật của trình duyệt của bạn. Trang web được bảo mật đúng cách thường hiển thị với một biểu tượng khóa màu xanh lá cây.

Bước 5: Cài đặt tự động gia hạn

Chứng chỉ của Let’s Encrypt chỉ có giá trị trong chín 90 nhằm khuyến khích người dùng tự động hóa quá trình gia hạn chứng chỉ của mình. Bạn cần thiết lập một lệnh chạy định kỳ để kiểm tra chứng chỉ hết hạn và tự gia hạn chúng.

Sử dụng cron để chạy kiểm tra gia hạn hàng ngày. Cron là một dịch vụ hệ thống chạy các tác vụ định kỳ. Đầu tiên, bạn mở cron và chỉnh sửa file crontab.

sudo crontab -e

Trình chỉnh sửa văn bản sẽ mở crontab mặc định. Đó là một file văn bản trống. Dán vào dòng sau đây, sau đó lưu và đóng file:

. . .

15 3 * * * /usr/bin/certbot renew --quiet

Phần 15 3 * * * của có nghĩa là “chạy lệnh sau đây lúc 3:15 sáng hàng ngày”. Bạn có thể chọn bất kỳ thời gian nào bạn muốn.

Lệnh renew cho Certbot kiểm tra tất cả các chứng chỉ được cài đặt trên hệ thống và cập nhật chứng chỉ nào hết hạn trong ít hơn 30 ngày. --quiet cho Certbot biết không xuất thông tin hoặc không đợi người dùng nhập vào.

cron sẽ chạy lệnh này hàng ngày. Tất cả các chứng chỉ đã cài đặt sẽ được tự động gia hạn và tải lại khi còn 30 ngày hoặc ít hơn thì hết hạn.

Ngoài ra thì trên CentOS 7, thiết lập khóa SSH là một phương pháp bảo mật tốt cho việc truy cập máy chủ từ xa. Việc sử dụng khóa SSH không chỉ đảm bảo tính bảo mật cao hơn so với đăng nhập bằng mật khẩu, mà còn giúp tiết kiệm thời gian và tăng hiệu quả làm việc.

Vietnix – Nhà cung cấp VPS tốc độ, ổn định và hỗ trợ chuyên nghiệp

Vietnix là nhà cung cấp VPS uy tín với hơn một thập kỷ kinh nghiệm trong lĩnh vực dịch vụ máy chủ. Chúng tôi cam kết mang đến cho bạn tốc độ vượt trội với các gói VPS sử dụng ổ cứng SSD/NVMe, đảm bảo ứng dụng của bạn hoạt động mượt mà và hiệu quả. Sự ổn định của hệ thống Vietnix được đảm bảo bởi công nghệ tiên tiến và cơ sở hạ tầng hiện đại, giúp bạn yên tâm triển khai dự án mà không lo gián đoạn.

Đội ngũ hỗ trợ chuyên nghiệp của chúng tôi luôn sẵn sàng 24/7, tận tâm giải đáp mọi thắc mắc và hỗ trợ bạn trong suốt quá trình sử dụng dịch vụ. Hãy chọn Vietnix để trải nghiệm dịch vụ VPS chất lượng cao, tốc độ, ổn định và hỗ trợ tận tình nhất!

Thông tin liên hệ:

  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn
  • Website:https://vietnix.vn/

Việc bảo mật Nginx bằng Let’s Encrypt trên CentOS 7 không chỉ giúp mã hóa dữ liệu, bảo vệ thông tin nhạy cảm mà còn nâng cao uy tín và trải nghiệm người dùng cho website của bạn. Với các bước hướng dẫn chi tiết trong bài viết, bạn có thể dễ dàng thiết lập chứng chỉ SSL/TLS miễn phí, đảm bảo an toàn cho lưu lượng truy cập. Nếu bạn có bất kỳ câu hỏi hoặc khó khăn nào, đừng ngần ngại để lại bình luận bên dưới.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
0 Comments
Phản hồi nội tuyến
Xem tất cả bình luận

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Icon tab

MAXSPEED HOSTING

TĂNG TỐC WEBSITE TOÀN DIỆN

CÔNG NGHỆ ĐỘC QUYỀN

Vector

PHẦN CỨNG MẠNH MẼ

Vector

HỖ TRỢ 24/7

Vector
ĐĂNG KÝ NGAYGroup icon
khuyến mãi 30 tháng 4
Khi mua Hosting/VPS
16/04/2025 - 16/05/2025
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

CẢM ƠN BẠN ĐÃ ĐÁNH GIÁ BÀI VIẾT

Vietnix sẽ luôn cố gắng cải thiện chất lượng dịch vụ mỗi ngày

ĐÓNG

Đánh giá mức độ hữu ích của bài viết

Thất vọng

Chưa hữu ích

Bình thường

Hữu ích

Rất hữu ích

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG