温馨提示×

ubuntu apache2怎样加密

小樊
36
2026-09-08 04:32:19
栏目: 网络安全

在 Ubuntu 上,Apache2 的“加密”通常指两种场景,最常见的是:

  1. HTTPS 加密(网站通信加密) ✅ 最常用
  2. .htaccess / 目录密码加密(访问控制)

下面分别说明。


一、Apache2 启用 HTTPS(SSL/TLS 加密)

方法 1:使用 Let’s Encrypt(推荐,免费)

1. 安装必要软件

sudo apt update
sudo apt install apache2 certbot python3-certbot-apache

2. 申请并自动配置证书

sudo certbot --apache

按提示输入:

  • 域名
  • 邮箱
  • 是否重定向 HTTP → HTTPS(建议选 2)

3. 验证

浏览器访问:

https://yourdomain.com

4. 自动续期测试

sudo certbot renew --dry-run

方法 2:使用自签名证书(测试用)

sudo apt install apache2
sudo a2enmod ssl
sudo mkdir /etc/apache2/ssl
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/apache2/ssl/apache.key \
-out /etc/apache2/ssl/apache.crt

编辑站点配置:

sudo nano /etc/apache2/sites-available/default-ssl.conf

修改:

SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key

启用:

sudo a2ensite default-ssl
sudo systemctl restart apache2

二、Apache2 目录/页面密码加密(.htaccess)

1. 启用模块

sudo a2enmod rewrite

2. 创建密码文件

sudo htpasswd -c /etc/apache2/.htpasswd username

3. 配置站点允许 override

sudo nano /etc/apache2/sites-available/000-default.conf

<Directory /var/www/html> 中加:

AllowOverride All

4. 创建 .htaccess

sudo nano /var/www/html/.htaccess

内容:

AuthType Basic
AuthName "Restricted Area"
AuthUserFile /etc/apache2/.htpasswd
Require valid-user

5. 重启 Apache

sudo systemctl restart apache2

三、加强 HTTPS 安全性(可选)

sudo nano /etc/apache2/mods-enabled/ssl.conf

建议:

  • 禁用 SSLv3
  • 使用 TLS1.2 / 1.3
  • 使用强加密套件

或使用:

sudo apt install libapache2-mod-security2

四、常见命令速查

sudo systemctl status apache2
sudo systemctl restart apache2
sudo apache2ctl configtest

如果你能告诉我:

  • ✅ 是想 网站 HTTPS 加密
  • ✅ 还是 后台/目录登录加密
  • ✅ 是否有域名

我可以给你更精确的配置示例

0