安全攻防技能30讲
何为舟
前微博安全研发负责人
立即订阅
3214 人已学习
课程目录
已更新 28 讲 / 共 30 讲
0/4登录后,你可以任选4讲全文学习。
开篇词 (1讲)
开篇词 | 别说你没被安全困扰过
免费
安全基础概念 (5讲)
01 | 安全的本质:数据被窃取后,你能意识到问题来源吗?
02 | 安全原则:我们应该如何上手解决安全问题?
03 | 密码学基础:如何让你的密码变得“不可见”?
04 | 身份认证:除了账号密码,我们还能怎么做身份认证?
05 | 访问控制:如何选取一个合适的数据保护方案?
Web安全 (7讲)
06 | XSS:当你“被发送”了一条微博时,到底发生了什么?
07 | SQL注入:明明设置了强密码,为什么还会被别人登录?
08 | CSRF/SSRF:为什么避免了XSS,还是“被发送”了一条微博?
09 | 反序列化漏洞:使用了编译型语言,为什么还是会被注入?
10 | 信息泄漏:为什么黑客会知道你的代码逻辑?
11 | 插件漏洞:我的代码看起来很安全,为什么还会出现漏洞?
12 | 权限提升和持久化:为什么漏洞修复了,黑客还是能够自由进出?
Linux系统和应用安全 (5讲)
13 | Linux系统安全:多人共用服务器,如何防止别人干“坏事”?
14 | 网络安全:和别人共用Wi-Fi时,你的信息会被窃取吗?
15 | Docker安全:在虚拟的环境中,就不用考虑安全了吗?
16 | 数据库安全:数据库中的数据是如何被黑客拖取的?
17 | 分布式安全:上百个分布式节点,不会出现“内奸”吗?
安全防御工具 (5讲)
18 | 安全标准和框架:怎样依“葫芦”画出好“瓢”?
19 | 防火墙:如何和黑客“划清界限”?
20 | WAF:如何为漏洞百出的Web应用保驾护航?
21 | IDS:当黑客绕过了防火墙,你该如何发现?
22 | RASP:写规则写得烦了?尝试一下更底层的IDS
知识串讲 (2讲)
模块串讲(一) | Web安全:如何评估用户数据和资产数据面临的威胁?
模块串讲(二)| Linux系统和应用安全:如何大范围提高平台安全性?
特别加餐 (3讲)
加餐 | 数据安全:如何防止内部员工泄漏商业机密?
加餐2 | 前端安全:如何打造一个可信的前端环境?
加餐3 | 职业发展:应聘安全工程师,我需要注意什么?
安全攻防技能30讲
登录|注册

13 | Linux系统安全:多人共用服务器,如何防止别人干“坏事”?

何为舟 2020-01-08
你好,我是何为舟。
从这一讲开始,我们讨论 Linux 系统和应用安全。我们知道,在开发一个应用的过程中,需要涉及代码、操作系统、网络和数据库等多个方面。所以,只是了解代码安全肯定是不够的,我们还需要了解常见的基础环境和工具中的安全机制,学会通过正确地配置这些安全机制,来提升安全保障。
谈到 Linux,我相信你每天都在使用 Linux 进行各种开发和运维操作。但是,大多数情况下,公司不会给每一个员工分配专有的 Linux 服务器,而是多个开发和运维共用一台 Linux 服务器。那么,其他员工在使用 Linux 服务器的时候,会不会对我们自己的数据和进程产生影响呢?另外,我在 Web 安全中讲过,黑客可以通过很多漏洞控制 Linux 服务器,那我们又该如何避免和控制黑客的破坏呢?

如何理解 Linux 中的安全模型?

要解决这些安全问题,我们首先要了解一个安全模型,Linux 的安全模型。
我们先来看一下 Linux 的构成,Linux 可以分为内核层和用户层。用户层通过内核层提供的操作接口来执行各类任务。
内核层提供的权限划分、进程隔离和内存保护的安全功能,是用户层的安全基础。一旦内核安全被突破(比如黑客能够修改内核逻辑),黑客就可以任意地变更权限、操作进程和获取内存了。这个时候,任何用户层的安全措施都是没有意义的。
取消
完成
0/1000字
划线
笔记
复制
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
该试读文章来自付费专栏《安全攻防技能30讲》,如需阅读全部文章,
请订阅文章所属专栏。
立即订阅
登录 后留言

精选留言(8)

  • hello
    请教老师,您说的“为了避免进程漏洞,适当的通过 iptables 进行访问限制,也能够起到不错的保护效果”,这句话不太明白,能否例举一两个事实应用的例子,多谢!

    作者回复: 可以详细了解下iptables的使用。简单来说,可以通过iptables阻止或者允许向Linux系统发起的请求。比如,我不希望ssh的22端口被随意的访问,那就通过iptables,给22端口设定几个白名单的ip。那么,对于非白名单的ip来说,本机的22端口就相当于下线了。这样一来,即使ssh存在弱密码,风险性也小很多。

    2020-01-09
    4
  • 小老鼠
    老师,咬字要清楚
    2020-01-08
    1
  • 小晏子
    我的留言居然丢了…再写一下,
    曾经使用过的linux服务器极少会用root账号登陆,系统管理员不会分配这个权限的,但是却有sudo用户权限,感觉sudo用户权限也是很高的权限了,个人认为给很多用户分配了sudo权限也是不安全的,应该限制,按照“最小权限”原则,应该区分用户权限,如果用户有安装软件需求,那就提交申请,不过这样会比较麻烦。

    作者回复: 如果只是两三个人公用的话还好,要是人多了,就容易出现问题,比如把别人的进程kill了之类的。另外,sudo启动的进程也是root的,root权限的进程过多,更容易对安全造成威胁。

    2020-01-08
    2
    1
  • humor
    老师好,您说“我们普通的Linux使用者通常是没有能力和精力去关注Linux内核的安全”,那么对于Linux内核的安全,业界或者大公司会有专业的团队来检测Linux内核的安全吗?如果有的话,是不是就意味着只要是在官网发布的Linux镜像,我们普通的开发者就可以认为Linux是安全的了呢?
    2020-02-07
  • humor
    我们为什么可以那么相信Linux内核呢?Linux内核就一定是安全的吗? 我们使用的Linux镜像有可能也像Windows一样被事先植入后门之类的吗? 还有如果Linux本身不可信的话,我们检测Linux是否安全的方法是不是也行不通了呢?

    作者回复: 可能没说清楚,Linux内核当然不可能是完全安全的,也会不时的曝出各种高危漏洞。但是,普通的Linux使用者通常是没有能力和精力去关注Linux内核的安全。所以我们能做的就是像插件安全一样,正常的使用Linux内核,并且保持更新即可。或者悲观一点的说,除了相信Linux内核,并没有其他的选择。

    2020-01-31
  • 弹弹君
    针对公司很多服务器的情况,使用Ansible这类工具批量管理密码策略,iptables,日志等,是常见的做法吗?

    作者回复: Ansible属于运维类的工具,对于多服务器的管理是十分高效的,是比较常见的工具。

    2020-01-09
  • leslie
    切换到nobody用户去执行确实是个非常实用的招数:学到了一招了;其它方面之前做的还算可以。
    2020-01-09
  • Cy23
    加深印象,看来我还差很多啊,基本上都给root权限了

    作者回复: 谨慎谨慎

    2020-01-08
收起评论
8
返回
顶部