linux服务器安全加固(linux服务器安全加固方法)

Linux服务器加固满足等保三级要求

应邀回答行业问题

Linux系统广泛被应用在服务器上,服务器存储着公司的业务数据,对于互联网公司数据的安全至关重要,各方面都要都要以安全为最高优先级,不管是服务器在云端还在公司局域网内,都要慎之又慎。

如果黑客入侵到公司的Linux服务器上,执行下面的命令,好吧,这是要彻底摧毁的节奏,5分钟后你只能呵呵的看着服务器了,为什么要seek呢?给你留个MBR分区。

dd if=/dev/zero of=/dev/sda bs=4M seek=1

Linux系统的安全加固可分为系统加固和网络加固,每个企业的业务需求都不一样,要根据实际情况来配置。比如SSH安全、账户弱口令安全、环境安全、关闭无用服务、开启防火墙等,已经Centos7为例,简单说下linux系统SSH网络安全加固。

SSH安全

将ssh服务的默认端口22修改为其他端口,并限制root用户登陆,配置firewall允许ssh端口通过。

[root@api ~]#sed -i \'s#Port 22#Port 6022#\' /etc/ssh/sshd_config

[root@api ~]#echo \'PermitRootLogin no\' /etc/ssh/sshd_config

[root@api ~]# firewall-cmd --zone=public --add-port=6022/tcp --permanent

[root@api ~]# firewall-cmd --reload

限制访问ssh的用户和IP

[root@api ~]#echo \'AllowUsers NAME\' /etc/ssh/sshd_config

[root@api ~]# echo \'sshd:xxx..x.x:allow\' /etc/

hosts.allow

[root@api ~]# systemctl restart sshd

禁止ping测试服务器,禁止IP伪装。

[root@api ~]# echo 1 /proc/sys/net/ipv4/icmp_echo_ignore_all

[root@api ~]# echo nospoof on /etc/host.conf

在Centos7以后iptables将被firewall替代,当然我们还能够使用iptables,首先需要删除firewall后,才能够使用iptables,技术总是在进步的,老的会慢慢被替代。

Linux系统安全加固还有很多,想要继续可以查阅资料。

系统加固之Linux安全加固

Linux系统基本操作

文件结构图及关键文件功能介绍

Linux文件结构

Linux文件结构图

二级目录

| 目录 | 功能 |

| /bin | 放置的是在单人维护模式下能被操作的指令,在/bin底下的指令可以被root与一般账号所使用 |

| /boot | 这个目录只要在放置开机会使用到的文件,包括 Linux核心文件以及开机选单与开机所需配置的文件等等 |

| /dev | 在Linux系统上,任何装置与接口设备都是以文件的形态存在于这个目录当中的 |

| /etc |

系统主要的配置文件几乎都放在这个目录内,例如人员账号密码各种服务的启动档,系统变量配置等

|

| /home | 这个是系统默认的用户家目录(home directory) |

| /lib | /lib放置的则是在开机时会用到的函式库,以及在/lib或/sbin底下的指令会呼叫的函式库 |

| /media | /media底下放置的是可以移出的装置,包括软盘、光盘、DVD等等装置都挂载于此 |

| /opt | 给第三方协议软件放置的目录 |

| /root | 系统管理员(root)的家目录 |

| /sbin | 放置/sbin底下的为开机过程中所需要的,里面包括了开机、修复、还原系统所需的指令。 |

| /srv | srv可视为[service]的缩写,是一些网络服务启动之后,这些服务所需要取用的数据目录 |

| /tmp | 这是让一般使用者或是正在执行的程序暂时放置文件的地方 |

文件

账号和权限

系统用户

超级管理员 uid=0

系统默认用户 系统程序使用,从不登录

新建普通用户 uid大于500

/etc/passwd

/etc/shadow

用户管理

权限管理

解析文件权限

文件系统安全

查看权限:ls -l

修改权限:

**chmod **

** chgrp**

设置合理的初始文件权限

很奇妙的UMASK:

umask值为0022所对应的默认文件和文件夹创建的缺省权限分别为644和755

文件夹其权限规则为:777-022-755

文件其权限规则为:777-111-022=644(因为文件默认没有执行权限)

修改UMASK值:

1、直接在命令行下 umask xxx(重启后消失)

2、修改/etc/profile中设定的umask值

系统加固

锁定系统中多余的自建账号

检查shadow中空口令账号

检查方法:

加固方法:

使用命令passwd -l 用户名 锁定不必要的账号

使用命令passwd -u 用户名解锁需要恢复的账号

使用命令passwd 用户名 为用户设置密码

设置系统密码策略

执行命令查看密码策略设置

加固方法:

禁用root之外的超级用户

检测方法:

awk -F \":\" \'( 1}\' /etc/passwd

加固方法:

** passwd -l 用户名**

****

限制能够su为root的用户

查看是否有auth required /libsecurity/pam_whell.so这样的配置条目

加固方法:

重要文件加上不可改变属性

把重要文件加上不可改变属性

Umask安全

SSH安全:

禁止root用户进行远程登陆

检查方法:

加固方法:

更改服务端口:

屏蔽SSH登陆banner信息

仅允许SSH协议版本2

防止误使用Ctrl+Alt+Del重启系统

检查方法:

加固方法:

设置账号锁定登录失败锁定次数、锁定时间

检查方法:

修改账号TMOUT值,设置自动注销时间

检查方法:

cat /etc/profile | grep TMOUT

加固方法:

vim /etc/profile

增加

TMOUT=600 无操作600秒后自动退出

设置BASH保留历史命令的条目

检查方法:

cat /etc/profile | grep HISTSIZE

加固方法:

vim /etc/profile

修改HISTSIZE=5即保留最新执行的5条命令

设置注销时删除命令记录

检查方法:

cat /etc/skel/.bash_logout 增加如下行

rm -f $HOME/.bash_history

这样,系统中的所有用户注销时都会删除其命令记录,如果只需要针对某个特定用户,,如root用户进行设置,则可只在该用户的主目录下修改/$HOME/.bash_history文件增加相同的一行即可。

设置系统日志策略配置文件

日志的主要用途是 系统审计 、监测追踪和分析。为了保证 Linux 系 统正常运行、准确解决遇到的各种样统问题,认真地读取日志文件是管理员的一项非常重要任务。

UNIX/ Linux 采用了syslog 工具来实现此功能,如果配置正确的 话,所有在主机上发生的事情都会被记录下来不管是好还是坏的 。

检查方法:

cat /etc/profile | grep HISTSIZE

确定syslog服务是否启用

查看syslogd的配置,并确认日志文件是否存在

阻止系统响应任何从外部/内部来的ping请求

加固方法:

echo 1 /proc/sys/net/ipv4/icmp_echo_ignore_all

服务器安全加固_Linux配置账户锁定策略

使用下面命令,查看系统是否含有pam_tally2.so模块,如果没有就需要使用pam_tally.so模块,两个模块的使用方法不太一样,需要区分开来。

编辑系统/etc/pam.d/system-auth 文件,一定要在pam_env.so后面添加如下策略参数:

上面只是限制了从终端su登陆,如果想限制ssh远程的话,要改的是/etc/pam.d/sshd这个文件,添加的内容跟上面一样!

编辑系统/etc/pam.d/sshd文件,注意添加地点在#%PAM-1.0下一行,即第二行添加内容

ssh锁定用户后查看:

编辑系统 /etc/pam.d/login 文件,注意添加地点在#%PAM-1.0的下面,即第二行,添加内容

tty登录锁定后查看:

编辑 /etc/pam.d/remote文件,注意添加地点在pam_env.so后面,参数和ssh一致

防黑加固Linux服务器安全加固?

使用一些安全测试的办法与工具对服务器进行风险检测,找出服务器的脆弱点以及存在的安全缺陷。

针对服务器操作系统自身的安全测试,包括一些系统配置、主机漏洞扫描等等

查看服务器操作系统当前用户是否为root用户,尽量避免使用root用户登录,启动其他服务程序,除非是一些需要root权限的安全工具,前提需要保证工具来源可信。终端需要 who 既可以查看当前登录用户。

登录到Linux系统,此时切换到root用户,下载lynis安全审计工具,切换到lynis运行脚本目录,执行 ./lynis --check-all –Q 脚本语句,开始对本地主机扫描审计,等待扫描结束,查看扫描结果。

登录到Linux系统,切换到root用户,使用命令行方式安装Clamav 杀毒软件,安装完毕需要更新病毒库,执行扫描任务,等待扫描结束获取扫描结果,根据扫描结果删除恶意代码病毒;

登录到Linux系统,切换到root用户,下载Maldetect Linux恶意软件检测工具,解压缩后完成安装。运行扫描命令检测病毒,等待扫描结束获取扫描报告,根据扫描报告删除恶意病毒软件;

登录到Linux系统,切换到root用户,下载Chkrootkit后门检测工具包,解压缩后进入 Chkrootkit目录,使用gcc安装Chkrootkit,安装成功即开始Chkrootkit扫描工作,等待扫描结束,根据扫描结果恢复系统;

登录到Linux系统,切换到root用户,下载RKHunter 后门检测工具包,解压缩后进入 RKHunter 目录,执行命令安装RKHunter ,安装成功即开始启用后门检测工作,等待检测结束,根据检测报告更新操作系统,打上漏洞对应补丁;

使用下面工具扫描Web站点:nikto、wa3f、sqlmap、safe3 … …

扫描Web站点的信息:操作系统类型、操作系统版本、端口、服务器类型、服务器版本、Web站点错误详细信息、Web目录索引、Web站点结构、Web后台管理页面 …

测试sql注入,出现几个sql注入点

测试xss攻击,出现几个xss注入点

手动测试某些网页的输入表单,存在没有进行逻辑判断的表单,例如:输入邮箱的表单,对于非邮箱地址的输入结果,任然会继续处理,而不是提示输入错误,返回继续输入。

针对风险测试后得到的安全测试报告,修复系统存在的脆弱点与缺陷,并且进一步加强服务器的安全能力,可以借助一些安全工具与监控工具的帮助来实现。

对服务器本身存在的脆弱性与缺陷性进行的安全加固措施。

使用非root用户登录操作系统,使用非root用户运行其他服务程序,如:web程序等;

web权限,只有web用户组用户才能操作web应用,web用户组添加当前系统用户;

数据库权限,只有数据库用户组用户才能操作数据库,数据库用户组添加当前系统用户;

根据安全审计、恶意代码检查、后门检测等工具扫描出来的结果,及时更新操作系统,针对暴露的漏洞打上补丁。

对于发现的恶意代码病毒与后门程序等及时删除,恢复系统的完整性、可信行与可用性。

部署在服务器上的Web站点因为程序员编写代码时没有注意大多的安全问题,造成Web服务站点上面有一些容易被利用安全漏洞,修复这些漏洞以避免遭受入侵被破坏。

配置当前服务器隐藏服务器信息,例如配置服务器,隐藏服务器类型、服务器的版本、隐藏服务器管理页面或者限制IP访问服务器管理页面、Web站点错误返回信息提供友好界面、隐藏Web索引页面、隐藏Web站点后台管理或者限制IP访问Web站点后台。

使用Web代码过滤sql注入或者使用代理服务器过滤sql注入,这里更加应该使用Web代码过滤sql注入,因为在页面即将提交给服务器之前过滤sql注入,比sql注入到达代理服务器时过滤,更加高效、节省资源,用户体验更好,处理逻辑更加简单。

linux系统安全加固需要做哪些方面

linux因其性能的优越以及稳定性,源代码开放,加上价格低廉,受到广大用户欢迎,所以它的安全性更应该加强。

主要需要注意的方面包括:

1、修改系统密码;

2、查看系统是否已设定了正确UMASK值;

3、锁定系统中不必要的系统用户和组;

4、预防flood攻击;

5、禁用X-windows服务;

6、加固TCP/IP协议。

所有操作前最好先做好备份,防止数据丢失。

未经允许不得转载:便宜VPS网 » linux服务器安全加固(linux服务器安全加固方法)