注:本文环境为CentOS7
本文内容仅供参考!
一、前置准备
1.关闭防火墙&SELinux
# 1. 关闭防火墙(学习环境不用拦)
systemctl stop firewalld
# 解释:临时关闭防火墙,重启后恢复
systemctl disable firewalld
# 解释:永久禁用防火墙开机自启
# 2. 关闭SELinux(安全限制,学习环境关掉)
setenforce 0
# 解释:临时关闭SELinux强制访问控制
# 3. 更新yum源
yum update -y
# 解释:更新系统软件仓库索引,安装包不报错

二、Nginx
1.安装Nginx
yum install nginx -y
CentOS 7 的官方默认 yum 源中不包含 Nginx 软件包。
按上条命令会出现下图情况:

解决方案:启用 EPEL 第三方源
# 安装 EPEL 源
yum install epel-release -y
# 刷新 yum 缓存
yum clean all && yum makecache
# 再次安装 Nginx
yum install nginx -y
2. 启停 & 开机自启
systemctl start nginx
systemctl enable nginx
#设置 Nginx 开机自动启动
systemctl status nginx
#查看 Nginx 运行状态,看是否正常启动
在下图中可以看到,nginx正常启动;

3. 核心文件路径
/etc/nginx/nginx.conf
#Nginx 主配置文件,所有全局配置都在这里
/var/log/nginx/
#日志目录,存放访问日志、错误日志
4.编辑配置文件做安全加固
vi /etc/nginx/nginx.conf
#打开 Nginx 主配置文件,改安全配置
加入以下几行:
server_tokens off
#隐藏 Nginx 版本号,防止黑客按版本打漏洞
autoindex off;
#关闭目录遍历,不让别人浏览网站所有文件
这里要注意,这两行要放在http{}内部块里;
5. 检查配置 + 重载生效
nginx -t
#检查配置文件有没有语法错误,改错了会提示
nginx -s reload
#热重载配置,不停止服务,直接生效

6. 查看访问日志
tail -f /var/log/nginx/access.log
解释:
- tail:查看文件末尾
- -f:实时刷新
- 实时看谁在访问你的网站,排查攻击扫描
三、Tomcat
1.Tomcat安装
yum install tomcat -y
systemctl start tomcat
systemctl enable tomcat
#安装→启动→设置开机自启
如下图:

关键目录
项目部署目录,扔 war 包自动运行
/var/lib/tomcat/webapps/
管理员账号密码配置文件
/etc/tomcat/tomcat-users.xml
2.删除默认高危示例项目
删掉自带示例页面,防止被利用漏洞
rm -rf /var/lib/tomcat/webapps/examples
rm -rf /var/lib/tomcat/webapps/manager
rm -rf /var/lib/tomcat/webapps/host-manager
如下图:

四、Apache
Apache 在 CentOS7 软件名叫 httpd
安装:
yum install httpd -y
systemctl start httpd
systemctl enable httpd
在下图中可以看到我在执行systemctl start httpd这条命令时,提示:
httpd 启动失败,报错提示让用这两条命令排查详情:
systemctl status httpd.service
journalctl -xe
可以看到具体原因是因为80端口被占用,是因为我前面使用了nginx;

这里有两个解决方法:
- 临时停掉 Nginx
systemctl stop nginx
systemctl start httpd
- 修改 httpd 默认端口
vi /etc/httpd/conf/httpd.conf
# 找到 Listen 80 改成其他端口,比如 Listen 8080
这里我采用了第一个方法:

可以看到这次启用成功;
编辑配置加固:
vi /etc/httpd/conf/httpd.conf
加入:
ServerTokens Prod
ServerSignature Off
#隐藏 Apache 版本号,报错页不泄露版本信息

4364

被折叠的 条评论
为什么被折叠?



