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:xxxxx:allow' >>/etc/
hostsallow
[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/hostconf
在Centos7以后iptables将被firewall替代,当然我们还能够使用iptables,首先需要删除firewall后,才能够使用iptables,技术总是在进步的,老的会慢慢被替代。
Linux系统安全加固还有很多,想要继续可以查阅资料。
查看 /etc/passwd 文件查看是否有无用的账号,如果存在则删除,降低安全风险。
*** 作步骤:
*** 作步骤:
*** 作步骤
*** 作步骤
使用命令 vim /etc/pamd/su 修改配置文件,在配置文件中添加行。
例如,只允许admin组用户su到root,则添加 auth required pam_wheelso group=admin 。
可选为了方便 *** 作,可配置admin支持免密sudo:在 /etc/sudoers 文件中添加 admin ALL=(ALL) NOPASSWD:ALL
为了防止使用"su"命令将当前用户环境变量带入其它用户,修改/etc/logindefs添加ALWAYS_SET_PATH=yes并保存。
*** 作步骤
*** 作步骤:
查看所有服务列表 systemctl list-units --type=service
*** 作步骤
使用命令 vim /etc/ssh/sshd_config 编辑配置文件。
配置文件修改完成后,重启sshd服务生效(systemctl restart sshd)。
*** 作步骤
修改/etc/profile 配置文件,添加行 umask 027 , 即新创建的文件属主拥有读写执行权限,同组用户拥有读和执行权限,其他用户无权限。
*** 作步骤
修改 /etc/profile 配置文件,设置为 TMOUT=600, 表示超时10分钟无 *** 作自动退出登录。
*** 作步骤
Linux系统默认启用以下类型日志,配置文件为 /etc/rsyslogconf:
通过上述步骤,可以在 /var/log/history 目录下以每个用户为名新建一个文件夹,每次用户退出后都会产生以用户名、登录IP、时间的日志文件,包含此用户本次的所有 *** 作(root用户除外)
服务器安全加固 - Linux - wubolive - 博客园
1、服务器 *** 作系统种类主要有四种,分别是windows服务器 *** 作系统、Linux服务器 *** 作系统、Netware服务器 *** 作系统和Unix服务器 *** 作系统。2、而常见的 *** 作系统是比较多的,有UNIX、Linux、MacOSX、Windows、iOS、Android、WP以及ChromeOS等 *** 作系统。而关于windows系统来说,也是用户比较多的一个系统,而苹果系统只能在苹果系统上应用,虽然已经有技术让苹果系统实现在一般pc上使用,但极其不稳定,很容易崩溃。
3、资料拓展:服务器 *** 作系统一般指的是安装在大型计算机上的 *** 作系统,比如Web服务器、应用服务器和数据库服务器等,是企业IT系统的基础架构平台,也是按应用领域划分的3类 *** 作系统之一(另外2种分别是桌面 *** 作系统和嵌入式 *** 作系统)。同时,服务器 *** 作系统也可以安装在个人电脑上。
使用一些安全测试的办法与工具对服务器进行风险检测,找出服务器的脆弱点以及存在的安全缺陷。
针对服务器 *** 作系统自身的安全测试,包括一些系统配置、主机漏洞扫描等等
查看服务器 *** 作系统当前用户是否为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注入到达代理服务器时过滤,更加高效、节省资源,用户体验更好,处理逻辑更加简单。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)