via: http://linux.cn/thread-2539-1-1.html
很多人觉得微软不够安全,所以很多人选择Linux于是就有很多程序员编写了Linux的相关软件,这么多的软件支持,技术支持,也就导致了很多程序员选择Linux。可程序员的水平不一就导致Linux漏洞。这给了黑客的机会,Linux安全就受到了重视。怎样才能保护好Linux安全呢?
一、取消不必要的服务
早期的Unix版本中,每一个不同的网络服务都有一个服务程序在后台运行,后来的版本用统一的/etc/inetd服务器程序担此重任。Inetd是Internetdaemon的缩写,它同时监视多个网络端口,一旦接收到外界传来的连接信息,就执行相应的TCP或UDP网络服务。
由于受inetd的统一指挥,因此Linux中的大部分TCP或UDP服务都是在/etc/inetd.conf文件中设定。所以取消不必要服务的第一步就是检查/etc/inetd.conf文件,在不要的服务前加上“#”号。
一般来说,除了http、smtp、telnet和ftp之外,其他服务都应该取消,诸如简单文件传输协议tftp、网络邮件存储及接收所用的imap/ipop传输协议、寻找和搜索资料用的gopher以及用于时间同步的daytime和time等。
还有一些报告系统状态的服务,如finger、efinger、systat和netstat等,虽然对系统查错和寻找用户非常有用,但也给黑客提供了方便之门。例如,黑客可以利用finger服务查找用户的电话、使用目录以及其他重要信息。因此,很多Linux系统将这些服务全部取消或部分取消,以增强系统的安全性。
Inetd除了利用/etc/inetd.conf设置系统服务项之外,还利用/etc/services文件查找各项服务所使用的端口。因此,用户必须仔细检查该文件中各端口的设定,以免有安全上的漏洞。
在Linux中有两种不同的服务型态:一种是仅在有需要时才执行的服务,如finger服务;另一种是一直在执行的永不停顿的服务。这类服务在系统启动时就开始执行,因此不能靠修改inetd来停止其服务,而只能从修改/etc/rc.d/rc[n].d/文件或用Run level editor去修改它。提供文件服务的NFS服务器和提供NNTP新闻服务的news都属于这类服务,如果没有必要,最好取消这些服务。
二、限制系统的出入
在进入Linux系统之前,所有用户都需要登录,也就是说,用户需要输入用户账号和密码,只有它们通过系统验证之后,用户才能进入系统。
与其他Unix操作系统一样,Linux一般将密码加密之后,存放在/etc/passwd文件中。Linux系统上的所有用户都可以读到/etc/passwd文件,虽然文件中保存的密码已经经过加密,但仍然不太安全。因为一般的用户可以利用现成的密码破译工具,以穷举法猜测出密码。比较安全的方法是设定影子文件/etc/shadow,只允许有特殊权限的用户阅读该文件。
在Linux系统中,如果要采用影子文件,必须将所有的公用程序重新编译,才能支持影子文件。这种方法比较麻烦,比较简便的方法是采用插入式验证模块(PAM)。很多Linux系统都带有Linux的工具程序PAM,它是一种身份验证机制,可以用来动态地改变身份验证的方法和要求,而不要求重新编译其他公用程序。这是因为PAM采用封闭包的方式,将所有与身份验证有关的逻辑全部隐藏在模块内,因此它是采用影子档案的最佳帮手。
此外,PAM还有很多安全功能:它可以将传统的DES加密方法改写为其他功能更强的加密方法,以确保用户密码不会轻易地遭人破译;它可以设定每个用户使用电脑资源的上限;它甚至可以设定用户的上机时间和地点。
Linux系统管理人员只需花费几小时去安装和设定PAM,就能大大提高Linux系统的安全性,把很多攻击阻挡在系统之外。
三、保持最新的系统核心
由于Linux流通渠道很多,而且经常有更新的程序和系统补丁出现,因此,为了加强系统安全,一定要经常更新系统内核。
Kernel是Linux操作系统的核心,它常驻内存,用于加载操作系统的其他部分,并实现操作系统的基本功能。由于Kernel控制计算机和网络的各种功能,因此,它的安全性对整个系统安全至关重要。
早期的Kernel版本存在许多众所周知的安全漏洞,而且也不太稳定,只有2.0.x以上的版本才比较稳定和安全,新版本的运行效率也有很大改观。在设定Kernel的功能时,只选择必要的功能,千万不要所有功能照单全收,否则会使Kernel变得很大,既占用系统资源,也给黑客留下可乘之机。
在Internet上常常有最新的安全修补程序,Linux系统管理员应该消息灵通,经常光顾安全新闻组,查阅新的修补程序。
四、增强安全防护工具
SSH是安全套接层的简称,它是可以安全地用来取代rlogin、rsh和rcp等公用程序的一套程序组。SSH采用公开密钥技术对网络上两台主机之间的通信信息加密,并且用其密钥充当身份验证的工具。
由于SSH将网络上的信息加密,因此它可以用来安全地登录到远程主机上,并且在两台主机之间安全地传送信息。实际上,SSH不仅可以保障Linux主机之间的安全通信,Windows用户也可以通过SSH安全地连接到Linux服务器上。
五、限制超级用户的权力
我们在前面提到,root是Linux保护的重点,由于它权力无限,因此最好不要轻易将超级用户授权出去。但是,有些程序的安装和维护工作必须要求有超级用户的权限,在这种情况下,可以利用其他工具让这类用户有部分超级用户的权限。Sudo就是这样的工具。
Sudo程序允许一般用户经过组态设定后,以用户自己的密码再登录一次,取得超级用户的权限,但只能执行有限的几个指令。
六、设定用户账号的安全等级
除密码之外,用户账号也有安全等级,这是因为在Linux上每个账号可以被赋予不同的权限,因此在建立一个新用户ID时,系统管理员应该根据需要赋予该账号不同的权限,并且归并到不同的用户组中。
在Linux系统上的tcpd中,可以设定允许上机和不允许上机人员的名单。其中,允许上机人员名单在/etc/hosts.allow中设置,不允许上机人员名单在/etc/hosts.deny中设置。设置完成之后,需要重新启动inetd程序才会生效。此外,Linux将自动把允许进入或不允许进入的结果记录到/rar/log/secure文件中,系统管理员可以据此查出可疑的进入记录。
每个账号ID应该有专人负责。在企业中,如果负责某个ID的职员离职,管理员应立即从系统中删除该账号。很多入侵事件都是借用了那些很久不用的账号。
在用户账号之中,黑客最喜欢具有root权限的账号,这种超级用户有权修改或删除各种系统设置,可以在系统中畅行无阻。因此,在给任何账号赋予root权限之前,都必须仔细考虑。
Linux系统中的/etc/securetty文件包含了一组能够以root账号登录的终端机名称。例如,在RedHatLinux系统中,该文件的初始值仅允许本地虚拟控制台(rtys)以root权限登录,而不允许远程用户以root权限登录。最好不要修改该文件,如果一定要从远程登录为root权限,最好是先以普通账号登录,然后利用su命令升级为超级用户。
做好上述六点,你就能安全的畅游在Linux系统之中了,好好体验一下个性化的操作系统。Linux安全重中之重,希望你能学会本文的知识。
相关推荐
标题 "213000_fbo_ggs_Linux_x64_Oracle_shiphome.zip" 暗示了这是一个与Oracle GoldenGate相关的软件包,专为64位Linux操作系统设计。Oracle GoldenGate是一款实时数据复制工具,用于在数据库之间进行低延迟的数据...
【标题】:“安全防范Linux嗅探器.rar”指的是一个关于Linux系统安全防护的资源包,主要涉及的是如何利用技术手段防止或检测Linux环境中的嗅探攻击。嗅探器通常指的是网络嗅探工具,它们可以捕获并分析网络数据包,...
6. **线程安全**:理解线程不安全函数,如动态内存分配、I/O操作等,并使用线程安全的库函数。 7. **线程调度**:了解Linux的调度策略,如SCHED_FIFO、SCHED_RR和SCHED_OTHER等。 8. **线程局部存储**:`pthread_key...
安装Quectel Linux USB串行选项驱动通常包括编译内核模块、加载模块到内核以及配置用户空间应用程序。开发者需要确保内核配置包含对USB CDC-ACM类的支持,并根据提供的文档正确配置设备节点和权限。此外,可能还...
在“191004_fbo_ggs_Linux_x64_shiphome.zip”这个压缩包中,包含的是Goldengate 19.1.0.0.4版本的Linux x64平台软件,这是针对64位Linux操作系统的一个版本,用户已经确认该版本在实际使用中没有问题。 Oracle ...
6. **设备兼容性**:针对ARM架构的优化,意味着它可以很好地在基于ARM的Linux设备上运行,例如树莓派或某些工业平板电脑。 在标签"fusionaccess"下,我们可以理解这个压缩包是FusionAccess整体解决方案的一部分,...
总的来说,OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09为基于Linux的aarch64设备提供了强大的Java开发和运行环境,是开发者进行Java应用开发的重要工具。通过持续更新和优化,OpenJDK确保了与Oracle JDK的兼容性...
《移远EC20 4G模块Linux内核驱动用户指南》V1.8详细解析 在现代通信技术中,4G模块扮演着至关重要的角色,它们为移动设备提供了高速的数据连接能力。移远EC20是一款先进的4G模块,支持WCDMA和LTE网络,广泛应用于...
WindTerm是一款功能强大的终端模拟器,专为Linux系统设计,同时也支持其他操作系统。这款软件的主要目的是为系统管理员、开发者和IT专业人士提供一个高效且可移植的控制台环境,以进行远程服务器运维工作。版本2.3.0...
OpenJDK11U-jdk_x64_linux_hotspot_11.0.7_10.tar.gz 是...这个特定的OpenJDK11U-jdk_x64_linux_hotspot_11.0.7_10版本是为64位Linux系统设计的,包含了所有必要的工具和库,便于开发者进行Java应用程序的开发和部署。
综上所述,“ogg112101_fbo_ggs_Linux_x64_ora11g_64bit”这个压缩包提供的Oracle Golden Gate软件,可以帮助用户在Linux 64位环境下实现与Oracle 11g数据库的高效、安全的数据同步,适用于需要实时数据复制的业务...
标题中的"LINUX_BT_DRIVER.TGZ"和描述中的"mpow_MPBH456AB_driver+for+Linux.tgz 20200812_LINUX_BT_DRIVER.TGZ"都提到了Linux下的蓝牙驱动程序,这表明该压缩包包含的是针对Linux操作系统的一个蓝牙设备驱动,可能...
在给定的压缩包"LibreOffice_5.1.3.2_Linux_x86-64_rpm.zip"中,我们专注于在Linux服务器环境下安装LibreOffice 5.1.3.2的详细过程和相关知识点。 1. **版本介绍**: LibreOffice 5.1.3.2 是该软件的一个稳定版本...
Linux作为开源操作系统,因其稳定性、安全性以及丰富的软件生态而被广泛应用在工业设备上。大恒工业相机的Linux SDK正是为了适应这样的环境,它允许用户在Linux系统上直接进行相机的编程和控制,从而实现定制化的...
jdk_x64_linux_hotspot_8u265b01.tar.gz是AdoptOpenJDK为64位Linux提供的OpenJDK 8更新版本,提供了一套完整的Java开发和运行环境,包括HotSpot虚拟机,确保开发者能够利用最新改进的安全性和性能进行Java应用程序...
「安全管理」Linux_HIDS杂谈 - WEB应用防火墙 安全管理 安全资讯 安全开发 零信任 身份管理
Linux升级不仅限于硬件固件,还包括内核、系统库、应用程序等软件层面的更新。在Linux系统中,这些更新通常通过包管理器(如apt、yum或dnf)来处理。然而,当涉及到特定硬件的固件时,如RK芯片的升级,就需要专门的...
日常管理中,Oracle DBA(数据库管理员)会使用SQL*Plus、Enterprise Manager或其他管理工具来监控数据库性能,执行备份和恢复,管理用户权限,以及应用Oracle的补丁和更新以保持系统的稳定性和安全性。 总之,...
OpenJDK11U-jdk_aarch64_linux_hotspot_11.0.10_9.tar.gz 是一个针对Linux平台的OpenJDK 11更新版本的压缩包,适用于aarch64(64位ARM架构)体系。这个压缩包包含了一个完整的Java Development Kit(JDK),用于在...
这通常意味着它是一个在64位Linux操作系统上运行的应用程序,用于与某种服务或系统进行交互。 描述中提到"FusionAccess Client 8.0.2.SPC2",FusionAccess是华为推出的一种云桌面解决方案,提供虚拟桌面和应用交付...