云服务器到手必做的安全配置-linux篇

2025-01-08 18:04:12 2726

云服务器作为当下企业与开发者构建应用、存储数据的重要基础设施,其安全性至关重要。Linux系统因其开源、稳定、灵活等特性,广泛应用于云服务器之中。然而,新购置的Linux云服务器在初始状态下往往存在诸多安全隐患,若不进行细致的安全配置,极易遭受黑客攻击、数据泄露等风险。以下将从系统更新、账户管理、防火墙配置、SSH安全、数据备份等方面,详细阐述Linux云服务器到手后必做的安全配置。

 

以下步骤以centos7系统为例

 

一、后台相关设置

首先,咱们先来买一台云服务器。登录蓝队云官网,挑选适合自己的云服务器配置。现在蓝队云线上是有优惠活动的,可以直接抵达活动页面,购买产品:蓝队云活动

 

购买完云服务器以后可进入个人中心-云服务器-云服务器管理处查看

image.png


进入后我们可针对云服务器进行防火墙设置

image.png


入方向:进入云服务器

出方向:云服务器发出

一般来说我们的云服务器不需要开启默认以外的其他端口就足以我们搭建网站。如果有特殊需求可根据自身业务需求增删端口。

 

二.云服务器配置

(一)服务器换源

更换yum源为国内源,可以显著提升云服务器的软件包下载速度,确保系统更新和软件安装过程更加顺畅。下面以更换阿里源为例:

1.备份本地yum源

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak

 

2.获取阿里yum源配置文件

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

 

3.更新yum缓存

yum makecache

 

4.查看当前yum源

yum repolist

image.png



(二)系统更新与补丁管理

1. 执行系统更新

更新系统包:Linux系统中存在大量的软件包,随着时间推移,这些软件包可能会出现安全漏洞。通过执行系统更新,可以确保所有软件包都是最新版本,从而降低因已知漏洞被攻击的风险。在CentOS7中,可使用以下命令进行更新:

sudo yum update

该命令会同步软件包索引,并升级所有可升级的软件包。

 

2. 定期检查更新

1)设置自动更新:为了避免因人为疏忽而遗漏系统更新,可以配置自动检查并安装更新。首先,安装 yum-cron 包:

sudo yum install yum-cron

然后,编辑 /etc/yum/yum-cron.conf 文件,设置自动更新的相关选项,如更新频率、是否自动安装更新等。

例如,要配置 yum-cron 每天检查更新并自动安装,你可以修改配置文件中的以下选项:

[commands]
update_messages =
yes
download_updates =
yes
apply_updates =
yes

 

2)使用第三方工具监控:借助第三方的安全监控工具,如 Lynis 或 OSSEC,可以定期扫描系统,检测是否存在未修复的安全漏洞,并提醒管理员及时进行更新。例如,使用 Lynis 进行系统安全审计:

sudo yum install lynis
sudo lynis audit system

 

(二)账户管理与权限控制

1. 创建与管理用户账户

1)创建新用户:为不同的业务需求和人员创建专门的用户账户,避免使用单一的root账户进行所有操作。创建新用户时,应为其分配适当的权限,确保其只能访问和操作与其工作相关的资源。例如,创建一个名为 webadmin 的用户,并为其设置密码:

sudo useradd webadmin
sudo passwd webadmin

在提示输入密码时,为其设置一个强密码。

 

2)禁用不必要的账户:对于系统中默认创建的、但实际业务中不需要使用的账户,应及时禁用。例如,假设我们有一个名为guest的用户账户,禁用 guest 账户:

sudo usermod -L guest

 

2. 配置sudo权限

1)精细化sudo权限:通过编辑 /etc/sudoers 文件,可以为用户或用户组配置具体的sudo权限。避免给予用户无限制的sudo权限,而是根据其工作需求,授予其执行特定命令的权限。例如,允许 webadmin 用户以root权限执行 systemctl 命令,但不允许执行其他命令:

 

使用 visudo 命令编辑 /etc/sudoers 文件:

sudo visudo

 

在打开的 sudoers 文件中,找到合适的位置(通常是在文件的末尾或在其他用户规则之后),添加以下行:

webadmin ALL=(ALL) /usr/bin/systemctl

 

2)记录sudo操作日志:确保sudo操作的日志记录功能正常开启,以便在发生安全事件时,能够追踪到具体的用户操作。在CentOS 7中,默认情况下,sudo操作的日志记录在 /var/log/secure 文件中。

 

(三)防火墙配置与网络管理

1. 配置firewalld防火墙

1)启用firewalld防火墙:firewalld是CentOS 7默认的防火墙管理工具,具有灵活的防火墙配置功能。首先,确保firewalld服务已启动并设置为开机自启:

sudo systemctl start firewalld
sudo systemctl enable firewalld

 

2)设置默认区域策略:将firewalld的默认区域设置为 drop 或 block,即默认拒绝所有入站和出站流量,然后根据实际需求,逐一开放必要的端口。例如,设置默认区域为 drop:

sudo firewall-cmd --set-default-zone=drop

 

3)开放必要端口:根据云服务器的业务需求,开放相应的端口。例如,对于一个Web服务器,需要开放HTTP(80端口)和HTTPS(443端口):

sudo firewall-cmd --zone=public --add-port=80/tcp --permanent
sudo firewall-cmd --zone=public --add-port=443/tcp –permanent

 

然后重新加载防火墙规则:

sudo firewall-cmd –reload

 

2. 限制SSH远程访问

1)更改默认端口:将SSH的默认端口(22)更改为一个不常用的端口,以减少被扫描和攻击的风险。编辑 /etc/ssh/sshd_config 文件,修改 Port 选项:

Port 2222

然后重启SSH服务:

sudo systemctl restart sshd

 

注:使用蓝队云服务器时,服务器开通会自动生成一个随机的ssh端口,可以在后台查看

image.png


2)禁用root远程登录:在 /etc/ssh/sshd_config 文件中,将 PermitRootLogin 选项设置为 no,禁止root用户直接远程登录:

PermitRootLogin no

 

3)使用密钥认证:为用户生成SSH密钥对,并将公钥添加到云服务器的 ~/.ssh/authorized_keys 文件中,使用密钥认证代替密码登录,提高安全性。

 

(四)安全扫描与漏洞修复

1. 定期进行安全扫描

1)使用开源安全扫描工具:如 OpenVAS、Nessus 等,定期对云服务器进行安全扫描,检测系统漏洞、配置缺陷等安全问题。例如,使用 OpenVAS 进行扫描:

sudo yum install openvas
sudo openvas-
setup

 

2)分析扫描结果:仔细分析扫描报告,确定需要修复的安全漏洞和配置问题,并制定相应的修复计划。

 

2. 及时修复漏洞

1)修复已知漏洞:根据扫描结果和官方安全公告,及时修复已知的安全漏洞。例如,修复Linux内核漏洞:

sudo yum install kernel

 

2)更新应用程序:对于运行在云服务器上的应用程序,定期检查其更新,修复应用程序自身的安全漏洞。例如,更新Apache Web服务器:

sudo yum install httpd

 

 

三、最后说一点

当我们配置完成,网站也搭建结束,记得回到蓝队云官网云服务器管理处创建一个镜像。如果遇到不可避免的问题时可以利用今天创建的镜像对云服务器进行还原

image.png


以上,就是Linux云服务器开通后必做的一些安全设置。更多云服务器、网络安全相关的知识分享,可以持续关注蓝队云。欢迎一起交流探讨。

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: