首页 话题 小组 问答 好文 用户 我的社区 域名交易 唠叨

[系统]掌握Ubuntu安装Nginx并配置HTTPS的实战技巧

发布于 2025-07-07 17:28:17
0
1297

引言Nginx是一个高性能的HTTP和反向代理服务器,常用于网站和应用程序的部署。配置HTTPS可以提高网站的安全性,保护用户数据不被窃取。本文将详细介绍如何在Ubuntu上安装Nginx并配置HTT...

引言

Nginx是一个高性能的HTTP和反向代理服务器,常用于网站和应用程序的部署。配置HTTPS可以提高网站的安全性,保护用户数据不被窃取。本文将详细介绍如何在Ubuntu上安装Nginx并配置HTTPS。

准备工作

在开始之前,请确保您的Ubuntu系统已更新到最新版本:

sudo apt update
sudo apt upgrade

安装Nginx

  1. 使用以下命令安装Nginx:
sudo apt install nginx
  1. 安装完成后,可以通过以下命令检查Nginx是否运行:
sudo systemctl status nginx

如果Nginx正在运行,您应该会看到类似以下输出:

nginx.service - High performance web server and reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2023-04-03 10:48:30 UTC; 3s ago Docs: man:nginx(8) Process: 1234 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS) Main PID: 1235 (nginx) CGroup: /system.slice/nginx.service └─1235 /usr/sbin/nginx -g daemon on; master_process on;

获取SSL证书

为了配置HTTPS,您需要获取一个SSL证书。以下是两种常用的方法:

1. 使用Let’s Encrypt

Let’s Encrypt是一个免费、自动化且开放证书颁发机构(CA)。您可以使用Certbot客户端轻松获取证书。

  1. 安装Certbot:
sudo apt install certbot python3-certbot-nginx
  1. 运行以下命令获取证书:
sudo certbot --nginx

Certbot会自动为您配置Nginx,并生成SSL证书。

2. 使用自签名证书

如果您不想使用Let’s Encrypt,可以创建一个自签名证书。

  1. 创建私钥和公钥:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/nginx-selfsigned.key -out /etc/ssl/certs/nginx-selfsigned.crt
  1. 根据提示填写相关信息。

配置Nginx

现在我们已经有了SSL证书,接下来配置Nginx以使用HTTPS。

  1. 打开Nginx的配置文件:
sudo nano /etc/nginx/sites-available/default
  1. 找到以下部分,并修改为以下内容:
server { listen 80; server_name yourdomain.com www.yourdomain.com; return 301 https://$server_name$request_uri;
}
server { listen 443 ssl; server_name yourdomain.com www.yourdomain.com; ssl_certificate /etc/ssl/certs/nginx-selfsigned.crt; ssl_certificate_key /etc/ssl/private/nginx-selfsigned.key; ssl_session_timeout 1d; ssl_session_cache shared:SSL:50m; ssl_session_tickets off; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384'; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { root /var/www/html; index index.html index.htm; }
}
  1. 保存并关闭文件。

  2. 重启Nginx以应用更改:

sudo systemctl restart nginx

测试配置

  1. 打开浏览器,访问您的域名。如果一切正常,您应该会看到您的网站,并且HTTPS连接已建立。

总结

恭喜!您已经成功在Ubuntu上安装了Nginx并配置了HTTPS。这将为您的网站提供更高的安全性,并确保用户数据得到保护。如果您遇到任何问题,请务必查阅Nginx和SSL/TLS的相关文档。

评论
一个月内的热帖推荐
tkword
Lv.1普通用户

0

帖子

0

小组

0

积分

赞助商广告
站长交流