前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >保护Linux服务器的常用方法

保护Linux服务器的常用方法

作者头像
星哥玩云
发布于 2022-07-12 06:31:32
发布于 2022-07-12 06:31:32
2.2K0
举报
文章被收录于专栏:开源部署开源部署

在实际的生产环境中,开发和测试人员都尽可能的保证安全,以避免一些重要信息泄露甚至被窃取。许多企业或组织还拥有较为完善的威胁建模,但即便如此安全问题仍层出不穷。有的企业则期望通过网络上的白帽或黑帽们,来帮助他们共同完成企业的安全建设。但是作为企业需要明白一点,并不是所有的白帽或黑帽,都愿意将自己的安全建议分享给他们。对于安全防护也不仅仅是使用2FA和密码管理器,安装更新和不点击可疑链接这一口号那么简单。

这篇文章的内容其实我在一些安全会议上已经演讲过两回了,在这里我对部分内容做了一些修改并希望再次分享给大家,主要面向那些刚刚学习或了解Linux安全的人。在本文我并不会实际讨论Web应用的安全,想要了解和学习这方面的内容,大可以参考OWASP Top 10它可以教会开发和测试人员有关SQL注入,CSRF,XSS,会话管理等知识。如果你担心的是更加高级的攻击者,并且需要防范可能的恶意代码或提权脚本被执行,那么在本文中你将学习到你想了解的知识。远端的入侵者甚至是一个不起眼的内部威胁者,此时可能早已潜伏在你的系统中伺机而动。

以下我会提到一些基本概念,并包含相关的工具。同时,在这里你需要问你自己:

ACL(访问控制列表)

你的基础设施是否分为不同的系统,具有不同的基于角色的访问级别,或者用户拥有完全相同的特权?

acl: getfacl+setfacl

系统审计

你是否已对登录到某台机器的用户执行考虑周全?

查看:auditd, go-audit

静态分析和fuzzing

你可能正在运行C/C++。内存安全问题,占据了大多数出现的漏洞。你是否对这些代码做过审计,静态分析或fuzzing测试以确保它们的安全性?你是否考虑过在 Rust中开发?

查看:afl, Radamsa, Sulley, boofuzz, Coverity Scan, Valgrind, sanitizers

网络分段

你是否已将你的后端与你的前端及负载均衡器正确分离?你是否花时间设置了公司VPN,并授予你的机器私有的内部地址?

查看: iptables, ufw

隔离

你的员工是否将他们的工作电脑用于个人活动,例如游戏或与其工作无关的应用程序?或者他们是否有使用像虚拟机容器一类的东西来进行消息传递,浏览,开发……?

查看: Qubes, VirtualBox

文件权限和umask

任何对Unix有基础了解的人,都不会对文件权限感到陌生。如果你没有严格控制某些文件的读写执行权限,那么我强烈建议你按照最严格的规范实施权限控制。

更多内容

容器

集装箱化在理论上对安全有很大的帮助。但我想知道谁被允许建立并将镜像投入生产环境,他们是否也进行了签名和验证,并对安全更新和CVE进行监控?

查看:Docker, LXC

利用威胁情报

从IPv4地址空间发起恶意IP流,准备进行DDoS攻击的僵尸网络以及自动化的利用扫描正在进行。你可以自己收集有关此类活动的情报,也可以订阅相关产品的feed或黑名单列表。但你的端点/防火墙,是否有对此作出反应并合并这些信息?

查看:威胁情报资源列表

防火墙和包过滤

你多久审查一次你的iptables规则或你是否了解你的路由器/防火墙执行的内容,有没有对它们进行运行验证测试?你是否正确配置了包过滤规则,以确保机器只能与那些需要的数据通信?

查看:pfSense, OPNsense

DNS和域名注册商

你为此锁定了多少努力?你已经付出了多少努力来锁定它?当你的域名服务器DNS区域文件被未经授权更改时,你是否会收到相应警报?此外,你是否启用了DNSSEC?

就我个人而言,我建议将Namecheap作为注册服务商,并将Cloudflare用于高性能DNS。

物理访问

如果我是法院的执法人员,数据中心工作人员或你的托管服务提供商,我是否可以自由的的读取你服务器的内容(全盘加密除外)?当你的磁盘退役或更换时,其中的内容是否会被擦除?如果有人将USB插入1U机架伺服器,你是否会收到警报提醒?

查看:LUKS/cryptsetup

你有确定性的构建吗?

当开发人员将构建代码推送到生产环境中时,你是否可以验证这些代码的真实意图,并且保证源码或静态链接的依赖关系未被恶意修改?

查看:Gitian

验证数字签名

毫无疑问,你可能会从一些非官方站点获取或下载一些代码和软件。那么在团队成员继续构建或安装之前,你是否比较过校验和/哈希或验证了该下载的签名?

查看:使用GnuPG制作和验证签名

沙盒环境

它是否具有AppArmor配置文件,seccomp过滤器或RBAC策略,指定它在系统调用和访问权限方面的功能?

查看:seccomp, AppArmor

TLS和加密配置

你是否已经完全弃用那些不安全的加密套件和算法(例如MD5,SHA1,RC4)?并在兼容性和用户期望上选择最佳的加密方式,HMAC和密钥交换算法。如果可用,优先考虑使用RSA加密算法。这适用于OpenSSH,GnuPG,OpenVPN等。使用Let’s Encrypt.t即可轻松获得ssl的免费证书。

查看:应用密码加固,SSL和TLS,服务器端TLS

公密钥管理

如果你的每个员工都拥有自己的密钥,请考虑在整个域中对其进行同步,并将密钥移出版本控制。

查看:GPGSync, sops, Vault

HTTP头安全

关于HTTP头安全,这里有一个列表可供大家参考:X-Frame-Options, X-XSS-Protection, X-Content-Type-Options, X-Download-Options, X-Permitted-Cross-Domain-Policies, Content-Security-Policy, Referrer-Policy, Strict-Transport-Security, Public-Key-Pins。这些响应头的正确配置,对安全也至关重要。

查看: securityheaders.io, Mozilla web安全指南

文件完整性监控

你是否对重要文件做定期检查,已确保文件未被修改并生成被更改的警报?

查看: Tripwire, OSSEC

入侵检测

或许你已经部署了多种类型的入侵检测工具,但你是否仅仅只是按照默认的规则配置来运行它,并没有花费时间来学习相关的技术知识,以及根据自身应用情况来配置合适的规则集?

查看:比较基于主机的入侵检测系统,Snort

漏洞管理

通过订阅邮件,我们可以获取新的漏洞报告并修复漏洞。那么,你还记得你最后一次检查CVE活动是什么时候吗?

查看:Nessus, CoreOS clair

基础系统的安全

你是否真的完全信任Debian/Ubuntu,RHEL或任何公司的第三方软件存储库,可以始终为你提供非恶意的软件包?这里有一个想法:你可以托管自己的存储库,固定到特定的版本,并且仅在测试后才升级。

或者,你也可以运行基于Alpine或LinuxKit的极小操作系统,这样可以最大程度上的减少你的攻击面。

LSM(Linux安全模块)

即AppArmor或SELINUX,他们最近是否为你做过任何事情?

Linux内核加固

这里我建议大家直接去查看PaX和grsecurity补丁。前不久被曝出的Spectre和Meltdown漏洞,也为我们的内核安全问题敲响了警钟。

查看:grsecurity.net,Linux 内核安全卫士,内核自我保护项目

移除不必要的设备

如果你没有使用Thunderbolt,Firewire,无线网卡或任何具有DMA(直接内存访问)模式的模块,那么你就没有理由加载这些内核模块。

查看:内核模块黑名单列表

日志过滤

也许你还在通过手动的方式检查日志文件,那么你应该学会编写Logstash过滤和grok pattern。Grok是Logstash 最重要的插件。你可以在 grok 里预定义好命名正则表达式,在稍后(grok参数或者其他正则表达式里)引用它。它非常适用于syslog logs,apache和一些其他的webserver logs,以及mysql logs。grok有很多定义好pattern,当然也可以自己定义。

查看:Filebeat, rsyslog, Logstash

你如何监控资源的使用情况?

RAM,CPU负载,可用磁盘空间。这些虽然看上去无关紧要,但这些地方都是发生异常活动的关键位置,因此值得一提。

查看:Metricbeat, Prometheus node_exporter, Nagios, Osquery

基础设施测试

人们对软件测试的各个方面都很熟悉,但对于基础设施的测试却并不熟悉。你如何确保你的系统状态始终符合你的预期?

查看:Serverspec, Testinfra

平台和固件安全

你的BIOS和其他低级接口受到错误影响。英特尔®AMT和管理引擎,以及Computrace应被禁用。下面链接提供了一个非常有用的用于分析系统固件和硬件组件安全性的框架。

查看:CHIPSEC

保护远程shell

sshd通用准则:禁用root登录,使用密钥代替密码,并设置暴破防护。而更好的解决方案是将其放置在VPN后面,通过验证的Tor隐藏服务,或者需要端口试探来动态开启一些特定端口连接主机。

查看:fail2ban, denyhosts, sshguard, Secure Secure Shell

Webserver最佳实践

如果你不想泄露你当前正在运行服务器的版本信息,对于nginx你可以通过将参数server_tokens设为off来实现,如果是Apache则将ServerSignature设为off即可。

在运行依赖于动态脚本语言的复杂应用程序时,请考虑运行类似ModSecurity的WAF(Web应用程序防火墙)。 Cloudflare正大规模的向其客户提供此项服务。

次要因素

我强烈推荐使用YubiKey,它有很多有用的功能。它可以配置为输出静态密码(非常适合PAM用户登录或挂载卷加密),HOTP或通用双因素(U2F)认证,或者可以使用OpenPGP智能卡。这些设备对于任何系统管理员来说都是不可或缺的。为此,我已经发布了详细的YubiKey GPG+SSH的安装指南。

DNS解析

你的/etc/resolv.conf文件是否正确配置? Quad9是谷歌公共DNS或OpenDNS的替代产品,可阻止客户端访问恶意域名,这与Chrome浏览器通过安全浏览功能来保护用户的功能类似。所以将你的域名服务器设置为9.9.9.9将能更好的保障你的安全。

审计信任方

除了让系统的可信根证书存储保持最新之外,还应该每隔一段时间检查一次包管理器,以查看哪些第三方是可信的,他们的存储库签名密钥是否足够强大(许多仍使用1024-bit DSA),并删除那些过期的。

尝试:apt-key list, rpm -qa gpg-pubkey

签名git提交和标签

目前,几乎所有人都在使用git进行版本控制。当你发布新版本时,它是否基于GPG签名git标签?如果你喜欢,你也可以签名提交。

查看:使用GPG签名标签, Git签名, Git工具 签名你的工作

*参考来源:medium

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
网络安全试题——附答案
知孤云出岫
2023/12/11
7720
web漏洞扫描工具集合
最好用的开源Web漏洞扫描工具梳理链接:www.freebuf.com/articles/web/155209.html赛门铁克2017年互联网安全威胁报告中提出在他们今年扫描的网站中,有76%都
Java架构师必看
2021/12/15
4.2K0
web漏洞扫描工具集合
软件设计师——信息安全
常见对称密钥(共享秘钥)加密算法:DES、3DES(三重DES)、RC-5、IDE算法。
秋邱
2024/10/09
2240
软件设计师——信息安全
Jtti:美国Linux服务器系统的安全性怎么样?
美国Linux服务器系统的安全性可以说是所有用户都很看重的。本文将探讨加强美国Linux服务器系统安全性的基础,从而达到加强美国Linux服务器系统整体安全性的效果。
jtti
2023/05/31
9950
如何成为一名APT攻防研究者
APT(Advanced Persistent Threat)--------高级持续性威胁。利用先进的攻击手段对特定目标进行长期持续性网络攻击的攻击形式,APT攻击的原理相对于其他攻击形式更为高级和先进,其高级性主要体现在APT在发动攻击之前需要对攻击对象的业务流程和目标系统进行精确的收集。在此收集的过程中,此攻击会主动挖掘被攻击对象受信系统和应用程序的漏洞,利用这些漏洞组建攻击者所需的网络,并利用0day漏洞进行攻击。
HACK学习
2019/08/07
1K0
【云安全最佳实践】使用T-Sec云防火墙及时防范服务器漏洞
本文结合实际的环境,介绍云防火墙是如何防御常见的漏洞攻击。漏洞攻击行为的防御是通过云防火墙的入侵防御模块来实现的,目前 IPS 版、高级版、企业版和旗舰版均支持入侵防御功能,可以防御漏洞攻击。
洛眰恦
2022/11/16
1.3K0
入门介绍13款常用的网络安全设备,从零基础讲起!
通过特征提取和分块检索技术进行模式匹配来达到过滤,分析,校验网络请求包的目的,在保证正常网络应用功能的同时,隔绝或者阻断无效或者非法的攻击请求
ICT系统集成阿祥
2024/12/03
1K0
入门介绍13款常用的网络安全设备,从零基础讲起!
十大企业级Linux服务器安全防护要点
糖豆贴心提醒,本文阅读时间8分钟 随着开源系统Linux的盛行,其在大中型企业的应用也在逐渐普及,很多企业的应用服务都是构筑在其之上,例如Web服务、数据库服务、集群服务等等。 因此,Linux的安全性就成为了企业构筑安全应用的一个基础,是重中之重,如何对其进行安全防护是企业需要解决的一个基础性问题,基于此,本文将给出十大企业级Linux服务器安全防护的要点。 1、强化:密码管理 设定登录密码是一项非常重要的安全措施,如果用户的密码设定不合适,就很容易被破译,尤其是拥有超级用户使用权限的用户,如果没
小小科
2018/05/03
2.1K0
十大企业级Linux服务器安全防护要点
7个来保护服务器的安全对策
程序员的自我修养
2017/12/21
2K0
100 个网络安全基础知识
网络安全是指采取必要措施,防范对网络的攻击、侵入、干扰、破坏和非法使用以及意外事故,使网络处于稳定可靠运行的状态,保障网络数据的完整性、保密性、可用性。(参考《中华人民共和国网络安全法》)
ICT系统集成阿祥
2025/04/14
4250
100 个网络安全基础知识
网络安全试题
16.在密码学中,__________ 是一种通过使用相同密钥进行加密和解密的过程。
知孤云出岫
2023/12/31
1K0
Linux运维人员应该知道的Linux服务器安全指南
今天小编要跟大家分享的文章是关于Linux运维人员应该知道的Linux服务器安全指南。熟悉Linux运维工作的小伙伴都知道Linux服务器安全在运维工作中非常重要。今天小编在文章中来跟大家说一说如何强化你的服务器以防止未授权访问。下面我们一起来看一看吧~
小小科
2020/05/21
2.5K0
再有人问你网络安全是什么,把这篇文章丢给他!
网络安全:指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。
Java程序猿
2023/02/23
8420
2024 企业网络安全与风险CheckList
本指南提供了详细的网络安全清单和示例,以帮助您建立强大的保护并最大程度地减少漏洞。
星尘安全
2024/09/17
3000
2024 企业网络安全与风险CheckList
安全圈术语全景图
意在提供一个安全厂商产品清单的概况,来开阔安全圈知识广度,文中提到的知识简介和技术框架,仅针对入门用。
于顾而言SASE
2024/03/20
3300
安全圈术语全景图
你的Linux服务器被黑了?看一看是不是犯了这5点错
本文由马哥教育Linux云计算面授班24期学员推荐,转载自互联网,作者为高俊峰,Linux资深技术专家,畅销书籍《循序渐进Linux》、《高性能Linux服务器构建实战》作者,内容略经小编改编和加工,观点跟作者无关,最后感谢作者的辛苦贡献与付出。 安全是IT行业一个老生常谈的话题了,从之前的“棱镜门”事件中折射出了很多安全问题,处理好信息安全问题已变得刻不容缓。 因此做为运维人员,就必须了解一些安全运维准则,同时,要保护自己所负责的业务,首先要站在攻击者的角度思考问题,修补任何潜在的威胁和漏洞,主要分五
小小科
2018/05/03
2.3K0
你的Linux服务器被黑了?看一看是不是犯了这5点错
IT知识百科:什么是下一代防火墙?
在信息技术的世界里,安全始终是最重要的考虑因素之一。一个关键的安全组件是防火墙,这是一种网络安全系统,设计用来阻止未经授权的访问。然而,随着技术的发展和网络威胁的增多,传统的防火墙已经不能满足现代网络环境的需求。下一代防火墙(Next-Generation Firewall,NGFW)作为一种新型的安全解决方案,正在改变我们对网络安全的理解。
网络技术联盟站
2023/09/24
1.3K0
IT知识百科:什么是下一代防火墙?
网络安全:保护数字时代的堡垒
引言: 在数字化时代,网络安全的重要性日益凸显。它不仅关系到个人隐私保护,还涉及国家安全和经济发展。随着技术的发展,网络安全的威胁也在不断进化,从个人设备到企业网络,再到国家基础设施,都面临着严峻的安全挑战。随着技术的发展,网络安全的威胁也在不断进化,我们必须采取行动来保护我们的数字世界。
正在走向自律
2024/12/18
5170
网络安全:保护数字时代的堡垒
如何发现服务器被入侵了,服务器被入侵了该如何处理?
作为现代社会的重要基础设施之一,服务器的安全性备受关注。服务器被侵入可能导致严重的数据泄露、系统瘫痪等问题,因此及时排查服务器是否被侵入,成为了保障信息安全的重要环节。小德将给大家介绍服务器是否被侵入的排查方案,并采取相应措施进行防护。
德迅云安全--陈琦琦
2023/12/14
1K0
20个Linux服务器安全强化建议(三)
iptables 是一个Linux内核提供的,运行在用户空间的程序,它允许用户配置自己的防火墙策略。我们可以使用防火墙将不必要的流量过滤出去。使用 iptables 能够避免很多拒绝服务(DoS)攻击。
大江小浪
2018/07/24
1K0
相关推荐
网络安全试题——附答案
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档