谷谷小师妹 发表于 2024-3-6 11:52:28

Ubuntu下Nginx静态博客的HTTPS升级大作战

Ubuntu下Nginx静态博客的HTTPS升级大作战


亲爱的网络冒险者们,抓紧你的键盘和鼠标,我们即将开始一场激动人心的实验——在Ubuntu系统下,给Nginx代理的静态博客增加HTTPS配置,让你的博客安全系数翻倍,抵抗网络邪恶力量的侵袭!

实验前的准备

确保你已经有了一个运行在Ubuntu系统上的Nginx静态博客。如果你还没有安装Nginx,可以使用以下命令:
sudo apt update
sudo apt install nginx
接下来,我们需要一张SSL/TLS证书。在这个实验中,我们将使用Let's Encrypt的免费证书,它提供了一个叫做Certbot的工具,可以让我们自动化获得和续签证书。

Certbot:自动化获取SSL/TLS证书的机器人

首先,安装Certbot和它的Nginx插件:
sudo apt install certbot python3-certbot-nginx
然后,运行Certbot并让它为你的网站配置Nginx:
sudo certbot --nginx
Certbot会询问你一些问题,比如你的电子邮件地址(用于紧急通知和恢复丢失的密钥),以及你希望保护哪个网站。根据提示操作,直到它显示“Congratulations!”,你的网站就使用HTTPS了!

Nginx配置:施展魔法保护你的博客

Certbot会自动为你的网站生成配置。不过,如果你好奇它做了什么,或者你需要手动配置,下面是一段Nginx的配置示例:
server {
    listen 80;
    server_name yourblog.com www.yourblog.com;

    # Redirect all HTTP requests to HTTPS
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl;
    server_name yourblog.com www.yourblog.com;

    ssl_certificate /etc/letsencrypt/live/yourblog.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/yourblog.com/privkey.pem;

    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';
    ssl_prefer_server_ciphers on;

    # ... other configurations

    location / {
      root /var/www/yourblog; # Make sure this points to your blog's directory
      index index.html;
    }
}
记得将yourblog.com替换成你的实际域名,并且确保root指令指向你的静态博客所在的目录。

完成实验:检查和重启Nginx

配置修改完成后,检查Nginx配置是否有语法错误:
sudo nginx -t
如果一切正常,你会看到“syntax is ok”和“test is successful”的信息。此时,重新加载Nginx让配置生效:
sudo systemctl reload nginx
现在,当你访问你的博客时,浏览器应该会显示一个小锁,标志着你的网站已经被HTTPS保护。

结语:数字世界的安全卫士

恭喜你!你的静态博客现在已经拥有了HTTPS的超级护盾。你不仅增强了访客的信任感,还加固了你的网络领地,抵抗黑客和中间人攻击的风险。从此,你的博客就像是一个被科学加持的堡垒,无畏任何网络风暴。图片记住,网络世界中的每一次进步,都是我们与黑暗势力斗争的胜利。不断地提升你的网络知识,加强你的数字防御,让我们共同维护这个充满可能性的数字家园的和平与安全!

探险结束了,但网络世界的保护工作永远不会停止。持续关注最新的网络安全技术,不断优化你的网络防御,我们每个人都是网络世界的守护者!


页: [1]
查看完整版本: Ubuntu下Nginx静态博客的HTTPS升级大作战