系统管理员必读:为 Linux 安装套件强化系统安全!

CentOS 7/8用户必看:OpenSSH权限提升漏洞(CVE-2021-41617)修复全流程指南 本文详细介绍了CentOS 7/8系统中OpenSSH权限提升漏洞(CVE-2021-41617)的修复全流程。从漏洞原理分析到实战修复方案,包括标准yum升级、源码编译和应急处理等多种方法,帮助系统管理员快速应对这一高危安全威胁,确保服务器安全。 阅读详情
系统管理员必读:为 Linux 安装套件强化系统安全!

发布日期: 1999-12-6
内容:

内容摘要: 本文介绍系统安全防护策略, 让系统管理员借以阻绝入侵者。 针
对不同的 Linux 系统, 讨论一些改善方式。 


--------------------------------------------------------------------------------


导读

不少人开始广泛谈论入侵网路主机的话题, 而 Linux 与 FreeBSD 则成为近
日主要的攻击对象, 包括像 imapd 与 BIND 程式里的 buffer overflow 问
题。 每天, 各式各样的「系统漏洞」, 都会在 BUGTRAQ 邮递论坛中宣布,
此一邮递论坛已有将近 20,000 位订阅者。 ( 若是您只想订阅一份系统安全
相关的邮递论坛, 那麽这个不容错过 )。 

假设上述的 19,305 位订阅者当中, 有至少一位打算写个 for() 回圈, 配
合公开的系统漏洞攻击程式, 藉以快速取得网路上主机的控制权... 事实上
这样的假设并不为过。 

如此一来, 您的电脑早晚会成为下一个遭受攻击的目标, 到时候, 您可能
就措手不及了。 

或许有些「专家」已经让您以为, 安装及维护一部安全的电脑, 有如「太空
科学」般地复杂, 事实上没那麽难啦。 拥有一套完善而健全的系统管理措
施, 才能保障您免於来自全球网路的威胁, 而本文讨论的便是, 我在规画
Red Hat Linux 网路系统时, 一般会采取的预防措施。 虽然文中提供了保障
系统安全的指引, 但它绝不是一份完整的参考说明。 

下列的步骤, 用意在使您的系统, 不要成为网路程式安全漏洞公开後的受害
者。 请特别注意: 如果您不确定清楚自己在做什麽, 那麽就别动手。 有些
步骤是假设, 您已经具备程度之上的相关知识。 文末另外还附上一些建议的
参考读物。 


系统安全之实作步骤 

1. 将系统中所有没必要的网路服务全部移除。 可以连到您电脑的方式越少,
表示入侵者恶闯的途径越少。 把 /etc/inetd.conf 档案中, 所有不需要的
项目都加注取消, 如果系统并不需要 telnet, 那就将它取消, 诸如 
ftpd、 rshd、 rexecd、 gopher、 chargen、 echo、 pop3d 等, 也是同样
的处理原则。 改完 inetd.conf 档案後, 别忘了要做个 'killall -HUP
inetd' 动作。 另外, 也别忽略 /etc/rc.d/init.d 目录里的东西, 有些网
路服务 ( 像 BIND、 印表机伺服程式 ) 是独自执行的程式, 透过目录里的
命令稿来启动。 

2. 安装 SSH。 SSH 是一个用来取代 'r' 系列指令的程式, 原本那些
Berkeley 版本的程式已经老旧了。 下列是摘自 http://www.cs.hut.fi/ssh
网页的资料: 

Ssh (Secure Shell) 是一个用来登入网路主机、
在远端主机上执行指令、 或是在两台主机间搬移档案的程式。
它提供了强大的认证功能, 并确保能够在网路上进行安全的资料通讯。

它额外还能够处理一些事情, 可能会是有心钻研之高手所感兴趣的。 请由
http://ftp.rge.com/pub/ssh 下载 SSH 程式。 

3. 使用 vipw(1) 把所有不淮登入的帐号全都锁起来。 值得注意的是, 那些
没有指定 login shell 的帐号, Red Hat Linux 会预设将它们指定为
/bin/sh, 这种情况可能不是你所期望的。 同时要确定, 您的使用者帐号中
没有把密码栏给空下来, 下列是一个正常之密码档案的部份内容: 

  daemon:*:2:2:daemon:/sbin:/bin/sync
  adm:*:3:4:adm:/var/adm:/bin/sync
  lp:*:4:7:lp:/var/spool/lpd:/bin/sync
  sync:*:5:0:sync:/sbin:/bin/sync
  shutdown:*:6:0:shutdown:/bin:/sync
  halt:*:7:0:halt:/sbin:/bin:/sync
  mail:*:8:12:mail:/var/spool/mail:/bin/sync
  news:*:9:13:news:/var/spool/news:/bin/sync
  uucp:*:10:14:uucp:/var/spool/uucp:/bin/sync
  operator:*:11:0:operator:/root:/bin/sync
  games:*:12:100:games:/usr/games:/bin/sync
  gopher:*:13:30:gopher:/usr/lib/gopher-data:/bin/sync
  ftp:*:14:50:FTP User:/home/ftp:/bin/sync
  nobody:*:99:99:Nobody:/:/bin/sync                    

4. 移除所有 root 所拥有之程式的 's' 位元权限, 如果它根本不需要这样
的权限。 这个动作可以由 'chmod a-s' 指令完成, 後面接的参数, 便是您
要改的档名。 

上述所提之程式包括以下各类, 但不限於此: 

a) 您从来不会去使用的程式 
b) 您不希望 root 之外的使用者会去执行的程式 
c) 偶而会用, 但以 su(1) 变成 root 再去执行, 也无所谓的程式 

我把自己会取消权限的程式列在下面, 并在前面放了星号 (*)。 记住, 由
於您的系统仍然需要一些 suid root 的程式, 才能正常地执行, 因此要特
别地小心。 

另一种方式, 您可以建立一个叫做 'suidexec' 的特殊群组名称, 然後将可
信赖的使用者帐号设在里面, 使用 chgrp(1) 指令将所有 suid 的程式改成
属於 suidexec 此一群组, 并将其他使用者可以执行的权限除掉。 

     
# find / -user root -perm "-u+s"    
*/bin/ping              
*/bin/mount              -- 应该只有 root 才可以挂上档案系统
*/bin/umount             -- 同上
/bin/su                  -- 别乱改它啊!
/bin/login
/sbin/pwdb_chkpwd
*/sbin/cardctl           -- PCMCIA 卡的控制工具程式
*/usr/bin/rcp            -- 改用 ssh
*/usr/bin/rlogin         -- 同上
*/usr/bin/rsh            --  "
*/usr/bin/at             -- 改用 cron, 或两者都停用
*/usr/bin/lpq            -- 改装 LPRNG
*/usr/bin/lpr            -- "
*/usr/bin/lprm           -- "
*/usr/bin/mh/inc
*/usr/bin/mh/msgchk
/usr/bin/passwd          -- 别乱改它啊!
*/usr/bin/suidperl       -- 每个新版的 suidperl 好像都有
                            buffer overflow 的问题
*/usr/bin/sperl5.003     -- 只有必要时才用它
/usr/bin/procmail        -- 
*/usr/bin/chfn
*/usr/bin/chsh
*/usr/bin/newgrp
*/usr/bin/crontab               
*/usr/X11R6/bin/dga      -- X11 里也有许多 buffer overflow 的问题
*/usr/X11R6/bin/xterm    -- "
*/usr/X11R6/bin/XF86_SVGA   -- "    
*/usr/sbin/usernetctl           
/usr/sbin/sendmail
*/usr/sbin/traceroute    -- 您应该可以忍受偶而打一下 root 密码吧

5.升级 sendmail。 从 ftp://ftp.sendmail.org/pub/sendmail 下载最新的
原始码档案, 解开後阅读其说明文件, 如果您还有点多余的时间, 可以安
装 smrsh ( 附随在 sendmail 里 ), 许多人所关心的 sendmail 安全问题,
如寄信给某些危害安全的程式, 这个程式大都考虑到了。 最後编辑
sendmail.cf 档案, 把 'PrivacyOptions' 选项设定为 'goaway': 

        O PrivacyOptions=goaway

如果您不打算收取网际网路上的电子邮件, 千万不要将 sendmail 以收信状
态 (sendmail -bd) 来执行! 在上述的情况下, 请将
/etc/rc.d/init.d/sendmail.init 取消, 并执行 'killall -TERM
sendmail' 命令。 不过, 您还是可以寄信到外面的。 

6.如果您有使用 BIND, 也要记得升级。 最新版的 BIND 可以在
http://www.isc.org 找到, 不然, 请将它们全部关闭掉。 

7.重新编译核心程式。 如果预设的核心程式太大, 我通常就会重新编译它。
提示: 请将有关防火墙的选项全部打开, 即使您的电脑并不是防火墙。 

       
        CONFIG_FIREWALL=y
        CONFIG_NET_ALIAS=y
        CONFIG_INET=y
        # CONFIG_IP_FORWARD is not set
        # CONFIG_IP_MULTICAST is not set
        CONFIG_SYN_COOKIES=y
        CONFIG_RST_COOKIES=y
        CONFIG_IP_FIREWALL=y
        CONFIG_IP_FIREWALL_VERBOSE=y
        # CONFIG_IP_MASQUERADE is not set
        # CONFIG_IP_TRANSPARENT_PROXY is not set
        CONFIG_IP_ALWAYS_DEFRAG=y
        CONFIG_IP_ACCT=y
        # CONFIG_IP_ROUTER is not set
        # CONFIG_NET_IPIP is not set
        CONFIG_IP_ALIAS=m

8.进行程式修补 所有已知的软体问题, 都可以在 RedHat 的「修正网页」上
找到, ( 请查阅 http://www.redhat.com/support/docs/errata.html, 找
出适合您版本的修补程式码 ), RedHat 在维护更新这些网页上, 确实做得
相当不错。 同时, 这些网页还包括一些 RPM 档案的连结, 您应该用得著,
请依照说明指示进行安装。 

9.设定 tcp_wrappers: tcp_wrappers 可以用来管理网路上, 哪些电脑可以
与您的电脑进行「沟通」。 这一套程式, 是由一位系统安全高手 Wieste
Venema 所写成, 它会管理那些经由 inetd ( 或与 inetd 程式库相连结 )
所启动的程式, 分析它们的设定档案, 以决定是否拒绝或同意某一个网路连
线要求。 举例来说, 为了允许您从家里能够透过 ISP 进行 telnet 及 
ftp, 同时间又要拒绝所有其他的连线, 可以在 /etc/hosts.allow 档案里
写入: 

        in.ftpd : .dialup.your-isp.com : allow
        all : all : deny 

像 SSH、 sendmail 及其他程式, 都可以做成与 tcp_wrappers 相互支援。
请阅读 tcpd(1) 的说明文件, 以取得进一步的资讯。 

Solar Designer 所提供的 Secure Linux patches:
http://www.false.com/security/li nux/

replay.com 提供的 RedHat crypto pages:
http://www.replay.com/redhat/

Breaking Into it 所提供的 Improving the Security of Your Site:
http://www.alw.nih.gov/Security/Docs/admin-guide-to-cracking.101.html

Slashdot 提供最新而及时的消息:
http://www.slashdot.org

想要知道最新的软体更新状况, 请参考 FreshMeat regularly:
http://www.freshmeat.net

Smashing the stac:
http://reality.sgi.com/nate/machines/security/P49-14-Aleph-One

                                     文由 Penelope Marr 所翻译
HTB Vaccine靶机实战:从SQL注入到权限提升的完整渗透测试路径解析 SQL注入是一种常见的Web安全漏洞,其原理在于应用程序未对用户输入进行充分过滤,导致攻击者能够操纵后端数据库查询语句。这种漏洞的技术价值在于它可能直接导致认证绕过、数据泄露甚至服务器沦陷,在金融、电商等涉及数据交互的应用场景中危害尤为严重。文件上传漏洞则允许攻击者将恶意文件上传至服务器,常被用于获取WebShell,进而实现系统控制。本文以HTB平台Vaccine靶机为案例,详细演示了如何通过SQL注入获取凭证哈希,并利用文件上传功能实现权限提升,为初学者构建了一条清晰的实战渗透学习路径。 阅读详情

相关推荐

为Linux操作系统安装套件强化系统安全

不少人开始广泛谈论入侵网路主机的话题, 而 Linux 与 FreeBSD 则成为近日主要的攻击对象, 包括像 imapd 与 BIND 程式里的 buffer overflow 问题。本文介绍系统安全防护策略, 让系统管理员借以阻绝入侵者。 针对不同的 Linux 系统, 讨论一些改善方式。

sendmail中与垃圾邮件相关的功能

sendmail中与垃圾邮件相关的功能 垃圾邮件是对广告宣传邮件的专门叫法,通常也称之为不请自来的商业电子邮件。它已经成为一个严重的问题,这主要是因为发件人(至少在美国)不是按字 节数付钱,而是纯粹按连接速率付钱的。或者就算他们按字节数付钱,他们也会只发送一则有数千个收件人的消息,然后通过另一台机器来转发它。别的机器支付了按字节算的庞大费用,而发送垃圾邮件者只支付一份拷贝的钱。在许多国家,最终用

全欣 的专栏 7083

Sharding Sphere JDBC使用Mybatis的saveBatch无法返回主键的问题

Sharding Sphere JDBC使用Mybatis的saveBatch无法返回主键的问题

HHCS231的博客 1834

linux 同步套件,为Linux安装套件强化系统安全

导读不少人开始广泛谈论入侵网路主机的话题, 而 Linux 与 FreeBSD 则成为近日主要的攻击对象, 包括像 imapd 与 BIND 程式里的 buffer overflow 问题。 每天, 各式各样的「系统漏洞」, 都会在 BUGTRAQ 邮递论坛中宣布, 此一邮递论坛已有将近 20,000 位订阅者。 ( 若是您只想订阅一份系统安全相关的邮递论坛, 那麽这个不容错过 )。假设上述的 1...

weixin_42342626的博客 156

Proxmox VE(PVE)与UPS联动配置:实现智能断电保护方案

本文详细介绍了为Proxmox VE (PVE)服务器配置UPS智能断电保护的完整方案。通过安装和配置apcupsd软件,实现PVE与UPS的联动,可在市电中断、电池电量不足时自动触发安全关机流程,有效保护虚拟机数据与服务连续性。文章涵盖了硬件选择、软件配置、策略设定及实战测试指南,并扩展了网络共享UPS的高级应用。

python9snake的博客 510

Happycapy深度解析:AI智能体的“iPhone时刻“来了?

从理论到实践深度解析了融合OpenClaw和ClaudeCode优点的超强智能体工具Happycapy

program哲学 458

Solaris 系统安全加固列表

导读:   --> 一、安全理念   1、安全的隐患更多来自于企业内部   2、对于管理员的要求:不要信任任何人   3、分层保护策略:假设某些安全保护层完全失效   4、服务最小化   5、为最坏的情况做打算   二、物理安全   1、记录进出机房的人员名单,考虑安装摄像机   2、审查PROM是否被更换,可以通过记录hostid进行比较   3、每个系统的OpenBoot口令应该不一样

887

用 deepseek 写小说(通用版提示词模板)

#Initialization:作为[Role],在[Goals]下,回顾你的[Skill],严格遵守[Constraints],5.第五步:人物大纲,给小说里的每个人物撰写背景故事,深挖人物过去的经历,原生家庭,住所:一栋位于市郊的房子,有三个卧室,房龄 10 年,厨房很大,当中有一个鸟式大理石。示例 2.戈德里洛克先去了熊老爹的工作坊,尝试用大纲法写作,却发现这种方法无聊透顶,1.第一步:一句话概括,一句话概述小说内容,主要包含小说癸型,主角,以及故事中需要。大灰狼的暴行彻底激怒了戈德里洛克,

陈奕昆的博客 2973

Solaris 安全问题

 一、安全理念 1、安全的隐患更多来自于企业内部 2、对于管理员的要求:不要信任任何人 3、分层保护策略:假设某些安全保护层完全失效 4、服务最小化 5、为最坏的情况做打算 二、物理安全 1、记录进出机房的人员名单,考虑安装摄像机 2、审查PROM是否被更换,可以通过记录hostid进行比较 3、每个系统的OpenBoot口令应该不一样,口令方案不可预测 4、系统安装完毕移除CD-ROM 5、

hbzhangjian的专栏 1095

你分得清ChatGPT、Gemini、Grok、豆包、千问、DeepSeek、OpenClaw、CloudCode、vibeCodeing、sKill、MCP,飞书、微信这些到底是什么吗?

AI技术生态呈现层级化发展,从基础模型到应用平台形成完整技术栈。核心分为五层:模型层(GPT、Gemini等基础模型)→AI助手层(ChatGPT等应用产品)→工具层(ClaudeCode等开发工具)→协议层(MCP等接口标准)→应用层(微信、飞书等平台)。未来趋势将形成"模型公司-开发框架-应用生态"三层结构,AI正逐步演变为新型操作系统,通过标准化协议连接各类外部系统,实现能力调用与生态整合。技术发展呈现出从底层基础设施到上层应用场景的垂直整合特征。

hy行者勇哥的博客 398

【乐鑫】唤醒词修改方法

乐鑫科技的语音识别模块(如ESP-SR)支持自定义唤醒词,但需通过官方工具链完成。

以实战经验介绍行业知识 827

2021年霸榜的程序员书有这样12本

2021已过去了一大半,常年霸榜的书前100里屈指可数,现在带伙伴们看一下这一年有哪些常年霸榜的书。排序按照榜单先后顺序排列。 1、C++ Primer Plus 第6版 中文版 C++程序设计教程,C++大百科全书 零基础自学C++入门图书 《C++ Primer Plus(第6版)中文版》分18章,分别介绍了C++程序的运行方式、基本数据类型、复合数据类型、循环和关系表达式、分支语句和逻辑运算符、函数重载和函数模板、内存模型和名称空间、类的设计和使用、多态、虚函数、动态内存分配、继承、代码

人邮异步社区 4359

四足机器人关节电机控制器实现(附C++代码)

本文先对做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容。

qq_35635374的博客 463

linux 安装rp-ppoe rpm,Linux基础篇 十二 (RPM 与 SRPM 套件管理员)

标签: rpm/srpm管理/安装/更新/升级, 后面补充了rmp的网络安装与升级方式yum1. RPM : 以一种数据库记录的方式来将你所需要的套件安装到你的 Linux 主机的一套管理程序。最大的特点就是将要安装的套件先编译过,并且打包好了,透过包装好的套件里头预设的数据库记录,记录这个套件要安装的时候必须要的相依属性模块(就是你的 Linux 主机需要先存在的几个必须的套件)。缺点是安装的环...

weixin_42389421的博客 404

手把手教你完成基于matlab的路面裂缝检测系统设计

裂缝是路面病害最早的形态之一,只有在裂缝出现的早期进行维护,才能有效地提高公路的使用寿命。因此,路面裂缝的检测识别系统对于提升公路质量有着重大的意义。首先,对路面裂缝图像进行相应的预处理,目的是减小环境因素的影响,消除无用的噪点。然后提取目标图像特征,判断路面裂缝类型,标记出路面裂缝的位置。最后通过设计的 GUI 界面来集成各个关键步骤,显示所得到的试验结果。仿真结果表明,设计的路面裂缝检测识别系统是高效可行的。

在职AI算法工程师,擅长计算机视觉,YOLO目标检测、分割等,擅长web、pyqt界面可视化,好内容持续更新中,来这里跟大家一起学习,共同进步 1216

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

理解 Linux 动态库加载:LD_LIBRARY_PATH

flyfish

二分掌柜的 395

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

USB 技术系列 11 · USB Linux 驱动框架

本文系统解析Linux USB驱动框架,涵盖USB Core、HCD(xhci-hcd/dwc3)、类驱动(CDC/HID/Mass Storage)分层架构,详解usb_device_id匹配、probe/disconnect生命周期及Device Tree配置。结合RISC-V N300实战,揭示Host/Device双模式驱动开发核心逻辑,助力嵌入式BSP开发者掌握USB子系统全栈能力。

peter_pan_study的博客 267

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

Linux 服务器性能排查手册(2026):CPU、内存、磁盘IO、网络四大瓶颈定位

iptables 四表五链模型、firewalld zone 信任级别、云安全组与主机防火墙的关系与优先级,避坑改了防火墙把自己挡在服务器外面的翻车事故。

2502_91473995的博客 338

Linux rm 误删文件恢复实操教程

Linux使用rm删除文件时,并不会直接抹除磁盘上的数据,只是移除文件索引,让系统不再识别这块空间。只要没有写入新数据,原有扇区内容就会保留。新文件写入才有可能覆盖这些区域,一旦覆盖就很难找回。恢复的本质就是扫描磁盘,找到这些还存在、但索引丢失的数据条目,再把它们导出保存到其他分区。越早停止写入,恢复成功的概率越高。

海天数据恢复-winhex数据恢复教程 237

Windows/Linux下强实时运动控制内核(二):基于Qt的Delta机械手的开发应用

强实时运动控制内核MotionRT750下Qt开发Delta机械手的完整开发流程。

weixin_57350300的博客 247

嵌入式 Linux OOM Killer 触发逻辑与防误杀实战指南

本文深入解析嵌入式 Linux 下 OOM Killer 的触发机制,结合工业网关真实工程场景,提供从日志排查、内核参数调优到关键进程保护的完整落地方案,解决核心进程被误杀导致的业务中断问题。

嵌入式扫地僧 397

Linux epoll 一篇讲透:从 select/poll 到红黑树、LT/ET,再到完整 TCP 服务器

一万个客户端已经连上服务器,眼下只有十个客户端发来了数据。服务器怎样把时间花在这十个连接上?理解这个问题,就抓住了 epoll 的主线。接下来,我们沿着“为什么需要它 → 接口怎么用 → 内核如何实现 → LT/ET 怎么写 → 完整服务器怎么运行”的顺序,把知识连起来。**阅读基础:**了解socketbindlistenaccept的基本用途即可。本文示例面向 Linux,服务器使用 C++17,实验脚本使用 Python 3。

2601_94861874的博客 300

深入浅出聊聊 Linux 的 PageCache 与系统极致性能

本文深入浅出解析了 Linux PageCache 的核心机制,揭示其如何通过“延迟写、预读读”提升系统性能。以监控告警为切入点,阐明 free -h 中 buff/cache 并非真正占用,真正可用内存由 available 决定。结合 Kafka、Elasticsearch、MySQL 等实战场景,说明中间件如何依赖 PageCache 实现极致性能。强调不可手动清理缓存,并建议合理调优脏页参数,避免卡顿。最终指出:内存满≠危机,而是系统高效运行的体现。

小小默:进无止境 489

【Linux 命令实战(06):Linux 文件权限管理,掌握 chmod、chown、chgrp】

chmod:修改文件和目录权限。chown:修改文件所有者,也可以修改所属用户组。chgrp:修改文件所属用户组。r:读取。w:写入。x:执行,对于目录则表示进入和访问能力。ugo:分别代表所有者、所属组和其他用户。我认为,权限管理最重要的不是记住755644这些数字,而是先弄清楚谁需要访问文件、需要执行什么操作,再给出恰当的权限。尤其是在测试服务器和生产服务器上,不要为了图方便直接使用chmod 777。权限开放得越大,并不代表问题解决得越好。

一些微不足道的见解、希望能帮助各位 341
上一篇: Unix的安全问题
下一篇: Linux 网络安全和优化
hem
hem
博客等级 码龄26年 19粉丝 287原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值