在新建虚拟主机时设置密码涉及多个层面的安全配置,需根据虚拟主机类型(如Apache/Nginx/IIS)及管理方式(cPanel/Plesk/面板或命令行)选择具体方案。以下是详细操作指南及安全建议:
1. 控制面板设置(如cPanel/Plesk)
用户密码:登录面板后进入「账户管理」或「用户」模块,创建虚拟主机账户时直接设置密码。需确保密码复杂度(至少12位,含大小写字母、数字及特殊符号)。
FTP密码:在「FTP账户」中单独设置,建议与主账户密码不同,避免撞库攻击。
数据库密码:通过「MySQL/MariaDB」模块创建数据库用户时设定,需使用强密码并限制远程访问IP。
2. 命令行配置(Apache/Nginx)
.htaccess密码保护(Apache):
htpasswd -c /path/to/.htpasswd username
输入命令后按提示设置密码,文件需存放在Web目录外。然后在.htaccess中添加:
AuthType Basic
AuthName "Restricted Area"
AuthUserFile /path/to/.htpasswd
Require valid-user
Nginx密码认证:在server块中添加:
auth_basic "Restricted";
auth_basic_user_file /etc/nginx/.htpasswd;
使用`openssl passwd`生成加密密码后写入指定文件。
3. 数据库安全
修改默认密码:安装MySQL/MariaDB后立即运行`mysql_secure_installation`,删除匿名用户并重置root密码。
权限隔离:为每个虚拟主机创建独立数据库用户,仅授予必要权限(如SELECT/INSERT/UPDATE)。
4. SSH登录加固
若虚拟主机包含SSH访问,禁用root登录并改用密钥认证:
PermitRootLogin no
PasswordAuthentication no
用户密码应通过`passwd`命令设置,并启用fail2ban防御暴力破解。
5. 控制面板特例
DirectAdmin:通过「用户管理」→「修改密码」强制密码过期周期。
宝塔面板:在「网站」→「PHP项目」中可一键开启访问密码,同时支持二次验证。
6. 额外安全措施
定期更换策略:每3个月强制更换密码,避免长期使用相同凭证。
日志监控:检查/var/log/auth.log或面板登录日志,发现异常尝试立即封锁IP。
防火墙规则:仅开放必要端口(如80/443),屏蔽默认的FTP 21端口,改用SFTP。
7. SSL加密
所有密码传输必须通过HTTPS/FTPS/SFTP协议,避免明文泄露。免费证书可通过Let's Encrypt自动部署。
设置密码时应避免使用个人信息或常见词汇,推荐采用密码管理器生成随机字符串。对于高敏感场景,可结合双因素认证(如Google Authenticator)提升安全性。
查看详情
查看详情