详细介绍25个Linux服务器安全提示
每个人都认为Linux在默认情况下是安全的,我大体上同意(这是一个有争议的话题)。Linux默认有内置的安全模型。你需要打开它并定制它,这样你就可以得到一个更安全的系统。Linux更难管理,但它也更灵活,配置选项更多。
对于系统管理员来说,让产品系统更加安全,免受黑客和黑客攻击是一个挑战。本文将介绍25个有用的技巧和窍门,帮助您使Linux系统更安全。希望这些提示和技巧能帮助您增强系统安全性。
1。物理系统安全
配置BIOS,禁用从CD、DVD、外部设备和软盘驱动器启动。接着,启用BIOS密码,启用了对密码的密码保护,这将限制对系统的物理访问。
2。磁盘分区
它是用不同的分区的重要,它可以保证为可能发生的灾难更高的数据安全性。通过划分不同的分区,可以将数据分组和隔离。事故发生时,只有那些出问题的分区的数据可以被摧毁,而其他分区的数据可以保留。你最好有以下的分区,和第三方程序最好安装单独的文件系统/下选择。
/
/引导
/ usr
/无功
/家
/甲氧苄啶
/选择
三.最小包装安装,最小易损性
你真的需要安装的所有服务不安装无用的套餐,避免这些包所造成的漏洞,最大限度地减少风险,因为一个脆弱的服务可能会损害其他服务。找到并删除或停止减少系统的脆弱性的未使用的服务。使用‘chkconfigrsquo;命令列出所有运行的服务在运行级别3。
/ sbin / chkconfig --列表| grep 3:#
当您发现不需要的服务正在运行时,请使用以下命令停止服务。
# chkconfig名了
使用RPM包管理器(如百胜或APT get工具)列出所有已安装的包,并用下面的命令卸载它们。
百胜Y删除软件包的名称#
sudo apt-get remove包名称#
4。检查网络监视器端口
随着网络命令'的帮助;netstatrsquo;你将能够看到所有打开的端口,以及相关的程序。用一下我上面提到过的;chkconfigrsquo;命令关闭不必要的网络服务系统。
# netstat -图尔潘
5。使用SSH(安全Shell)
Telnet和Rlogin协议只能用于纯文本,不能使用加密的格式,这将导致安全vulnerabilities.ssh是一种安全协议,采用加密技术,当客户端与服务器端通信。
不要直接登录root帐户除非是必要的。使用sudo执行命令。Sudo是由 / / sudoers文件等,也可以使用编辑了;visudo工具,这将通过vi编辑器打开配置文件。
同时,建议将默认SSH 22端口号更改为另一个更高的端口号。
#六 / / / sshd_config SSH等
关闭根用户登录
PermitRootLogin不
通过特定的用户
让用户的用户名
使用ssh协议的第二个版本
协议2
6。保证系统是最新的
该系统包括修补程序的最新版本、安全修补程序和可用内核。
# yum更新
#百胜检查更新
7。锁cron任务
玉米有自己内置的功能,让人们确定哪些人不能运行的任务。这是由两个文件控制, / / /等cron.allow等 / cron.deny.you可以简单地写它的名字时,你想和corn.deny cron的锁定用户,并允许用户添加自己的名字cron.allow当他们运行的cron。如果你想禁止所有用户使用的玉米,你可以添加ALL添加一行的cron.deny。
#回声均> > / / cron.deny等
8。禁止USB检测
在许多情况下,我们要限制用户使用USB来保证系统的安全和数据泄露。创建一个文件‘ / /文件等。D /不usbrsquo;并使用下面的命令来禁止USB存储检测。
安装usb存储
9。开放的SELinux
SELinux(安全增强的Linux)是强制访问控制的安全机制,通过Linux内核提供的。禁用SELinux意味着系统失去安全机制。在你删除SELinux仔细考虑。如果您的系统需要发布到网络并在公共网络中访问,那么您必须更加注意它。
SELinux提供了三种基本的操作模式:他们是:
执法:这是默认的模式,它是用来使SELinux和执行安全措施。
许可证模式:在这个模式中,SELinux并没有强制的安全措施,只是警告和日志记录。这种模式是非常有用的故障排除时,SELinux相关问题。
关闭方式:SELinux关闭。
You can use the command line lsquo; system-config-selinuxrsquo; lsquo; getenforcersquo; or lsquo; sestatusrsquo; to browse the current state of SEliux.
# sestatus
如果模式是封闭的,用下面的命令打开SELinux
# setenforce执行
你也可以通过配置文件' SELinux开关; / / / configrsquo SELinux等。
10。删除KDE或GNOME桌面
不需要运行X Window桌面,如KDE和GNOME,在专用灯服务器。他们可以被删除或关闭,提高系统的安全性和性能。打开/等/ inittab和更改运行级别3关闭这些台式机。如果你把它完全从系统中,你可以使用下面的命令:
百胜groupremoveX窗口系统#
11。关闭IPv6
如果您不使用IPv6协议,则应该关闭它,因为大多数应用程序和策略不使用IPv6,目前服务器不需要它。
#六 / / sysconfig /网络等
networking_ipv6 =没有
ipv6init =没有
12。限制用户使用旧密码
如果你不想让用户继续使用旧的代码,这是有用的。旧密码文件位于 / / /安全等opasswd.you可以使用PAM模块来实现它。
在RHEL / / Fedora CentOS打开‘ / /聚丙烯酰胺等。D /系统文件authrsquo。
#六 / /聚丙烯酰胺等。D /系统认证
在Ubuntu和Debian Linux Mint / / 打开‘等/聚丙烯酰胺。D /普通passwordrsquo;文件。
#六 / /聚丙烯酰胺等。D /通用密码
在添加以下行;authrsquo;块。
作者充分pam_unix.so likeauth nullok
在‘passwordrsquo;块添加以下行禁止用户使用5个密码他们过去。
密码足够pam_unix.so nullok use_authtok MD5的影子记得= 5
服务器只记录最后5个密码。如果您尝试使用过去使用的5个旧密码中的任何一个,就会看到以下错误提示。
密码已被使用。选择另一个。
13。如何检查用户密码的过期时间
在Linux中,用户的密码是加密的形式在'; / / shadowrsquo等;在文件,检查用户的密码已经过期,你需要使用‘chagersquo;命令。这将显示密码的最后修改日期和细节的密码期。这些细节是系统确定用户是否必须修改其密码的基础上。
若要查看任何现有用户的老化信息,如过期日期和时间长度,则使用以下命令。
#更改我的用户名
若要修改任何用户密码的老化,请使用以下命令。
#变化- M 60的用户名
#改变M 60 M 7 - 7 W的用户名
参数
m设置最大天数
m设置最小天数
w设置你想要的天数
14。手动锁定或解锁用户帐户
锁定和解锁非常有用,您可以锁定帐户一个星期或一个月,而不是从系统中删除帐户。
# passwd -l帐户名
提示:这个锁定的用户只对root用户可见。这个锁是通过将加密的密码替换成(!)如果你想用这个帐号进入系统,他会得到以下错误提示。
#苏帐户名
此帐户目前不可用。
打开锁定帐户时,使用以下命令。此命令将更改由(!)替换的密码。。
# passwd -u帐户名
15。增强密码
有相当数量的用户使用很弱智的密码,和密码可以通过字典攻击的攻击或暴力攻击。‘pam_cracklibrsquo;模块存储在PAM,可以强制用户设置复杂的密码,打开下面的文件编辑。
#六 / /聚丙烯酰胺等。D /系统认证
添加一行在文件中并使用认证参数(lcredit,优信,提及,或信用为小写字母、大写字母、数字和其他字符)
/ lib /安全/ $ ISA / pam_cracklib.so重试= 3 = 8 = 1市明仁lcredit优信= 2 = 2 =提及信用1
16。启用iptable(防火墙)
这是强烈建议使Linux防火墙禁止非法程序访问的iptable规则是用来过滤的入境、出境,并转发数据包。我们可以允许和拒绝访问一个特定的UDP或TCP端口的源地址和目的地址。
17。禁止重新引导
在大多数的Linux发行版,按Ctrl Alt deletersquo ‘;它将重新启动你的系统。这是唯一的生产服务器上的一个很好的做法,这可能会导致误操作。
这个配置是‘ / / inittabrsquo等;文件,如果你打开该文件,你可以看到下面的段落。默认行已注明。我们必须对他。这个特定的键将重新启动系统。
#陷阱ctrl-alt-delete
#钙:ctrlaltdel: / sbin /关机- T3 R现在
18。检查空密码帐户
任何空密码帐户意味着网络上任何未经授权的用户都可以访问此漏洞,这是对Linux服务器的一种安全威胁。因此,请确保所有用户都有复杂的密码和
没有特权用户。空的密码帐户是一个安全风险,并且很容易被征服。下面的命令可以用来检查是否有空密码帐户。
猫/等/阴影awk -F:# |(2美元= =){打印1美元}
在19之前显示SSH提示。登录
当SSH被认证时,使用法律和安全警报是一个很好的建议。
20。监控用户的行为
如果你有很多用户,收集关于每个用户行为的信息和他们的过程所消耗的信息是很重要的,用户分析可以通过一些性能优化和安全问题处理来进行。
但是,如果您监视并收集用户行为信息
有两个有用的工具,psacctrsquo;‘‘acctrsquo;可用于监视用户在系统中的行为和过程。这些工具在系统后台执行,并记录系统中的所有用户和资源如Apache,MySQL,SSH的消费行为,FTP等。
21。定期检查日志
将日志移动到专用日志服务器中,防止入侵者轻易更改本地日志:
记录系统日志或当前活动日志。
/ / / var日志auth.log ndash;身份认证登录。
/ / / var日志kern.log ndash;内核日志。
/ / / cron.log VaR的日志- Crond日志(cron任务)。
/ / / var日志maillog ndash;邮件服务器日志。
/ / / var日志boot.log ndash;系统启动日志。
/ / / var日志mysqld.log ndash;MySQL数据库服务器的日志。
身份验证日志。
/ / / var日志utmp或 /无功/日志/ wtmp:登录日志。
/ / / yum.log VaR日志:百胜的日志。
22。重要文件的备份
在生产环境中,对于灾难恢复,必须备份和保存重要文件在安全的远程磁带保险、远程站点或磁盘中。
23。网卡绑定
有两种类型的NIC绑定模式需要在绑定界面上获得。
模式= 0,循环赛模式
模式= 1,激活和备份模式
网卡绑定可以帮助我们避免单个故障,在网卡绑定中,我们绑定两个或多个网卡来提供一个虚拟接口,它设置IP地址并与其他服务器进行通信,这样我们的网卡就可以在网卡掉下来或其他原因不用时可用。
24。保持只读
Linux内核及其相关文件存储在引导列表中,默认情况下可以读取和写入。将其设置为只读可以减少由于对重要启动文件进行非法修改而导致的一些风险。
#六 / / fstab等
在文件的结尾添加以下行并保存它
标签= / /开机默认启动的ext2,RO 12
如果将来需要升级内核,则需要返回到读写模式。
25。没有鸟ICMP和广播请求
添加以下行/等/ sysctl.conf屏蔽平和广播请求。
忽略ICMP请求:
net.ipv4.icmp_echo_ignore_all = 1
忽略广播请求:
net.ipv4.icmp_echo_ignore_broadcasts = 1
运行下面的行以加载更改或更新:
# sysctl - P