当前位置: 首页 > Linux

14个Linux系统安全小窍门,总有妙招!

时间:2023-04-06 02:30:47 Linux

对于互联网IT从业者来说,越来越多的工作会逐渐转移到Linux系统上。这一点,无论是开发、运维,还是测试,都应该深有体会。有技术调查网站W3Techs在2018年11月发布了一份调查报告,报告显示Linux在网站服务器系统中的使用率高达37.2%。这个数据也说明Linux系统被广泛使用。事实上,除了在网站服务器中的应用,Linux系统还用于DNS域名解析服务器、邮件服务器以及一些开源软件的应用(大数据应用:据Linux基金会研究),86%的企业已经使用Linux在操作系统上进行云计算、大数据平台建设)服务器等,大多数用户都默认Linux是安全的,有时这种说法确实是一个有争议的话题。默认情况下,Linux确实有一个内置的安全模型。您需要打开它并对其进行自定义以获得更安全的系统。Linux更难管理,但也相应地更灵活,有更多的配置选项。对于系统管理员来说,让产品的系统更安全,免受黑客和黑客的攻击,一直是一个挑战。而且,近年来Linux被攻击的案例屡见不鲜,如何构建一个安全、强大、坚固的Linux系统一直是一个探索的课题。今天米工哥就从系统的各个层面来和大家分享一下我在日常工作中是如何构建或者加强Linux系统的安全性的。希望这些方法对你有所帮助。暗语不易。如果有帮助,请转发分享和加分观看,支持米公。1.物理安全这应该说是服务器安全的第一步。硬件服务器,首先需要专业人员进行专业维护。二是从CD/DVD等这些方面关闭软启动方式。同时还可以设置BIOS密码,还要有策略限制访问和各种流程控制。您也可以出于安全目的禁用USB设备:vim/etc/modprobe.d/stopusbinstallusb-storage/bin/true或使用以下命令删除USB驱动程序[root@rs-server~]#mv/lib/modules/3.10.0-693.el7.x86_64/kernel/drivers/usb/storage/usb-storage.ko.xz2。保持系统最新及时修复。确保系统包含最新版本的补丁、安全修复程序和可用内核。yumupdatesyumcheck-update这需要管理员密切关注国内外最新的系统漏洞和补丁发布信息:3.最小化原则无论是安装系统还是安装常用软件,都要遵循这个原则:最小化安装,也减少漏洞出现的可能性。对于系统中一些不需要的服务和端口,建议关闭。[root@rs-server~]#chkconfig--list|grep"3:on"network0:off1:off2:on3:on4:on5:on6:off然后使用如下命令关闭:chkconfigservice-nameoff4.登录和连接对于Linux服务器,一般使用远程登录(SSH)连接进行登录操作。因此:第一步:除了不必要的情况,不要使用root用户登录,可以使用sudo进行提权操作,然后使用系统命令锁定/etc/sudoers文件(root以外的用户)用户无权修改)。第二步:建议修改SSH配置文件,比如默认端口号22,禁止root密码登录(部分自有机房也可以直接禁止root用户通过SSH协议登录)等。[root@rs-server~]#vim/etc/ssh/sshd_config#Port22可以修改成其他端口号,农民工经常用IP+22混用#AllowUsers用户名指定特定用户通过SSH协议远程连接。对于生产中的服务器,我们还可以使用堡垒机来限制连接:手把手教你从0搭建跳转服务器,保护服务器安全!5、用户管理Linux是一个可以由多个用户并行操作的系统。因此,系统也对用户进行了划分:超级用户和普通用户。两者的权限不同,所以能做的事情也不同,所以对于用户管理来说也是非常重要的一步。设置用户密码:可以通过系统命令passwd设置。一般建议使用强度相对复杂的密码,每个系统中同一个用户使用不同的密码(可以用manager日常管理)。[root@rs-server~]#passwdmingonggeChangingpasswordforusermingongge.Newpassword:Retypenewpassword:passwd:allauthenticationtokensupdatedsuccessful.临时用户管理:对于这种临时用户管理,使用后可以删除,也可以过一段时间后锁定,防止再次登录,下次需要登录时重新启用权限.删除用户很简单,可以使用系统命令userdel-r用户名来删除。锁定一个用户其实就是修改用户的属性:[root@rs-server~]#usermod-Lmingongge我们打开终端尝试登录:这时我们发现无法正常登录和连接,说明刚才的配置是正确的。下次需要登录时,可以使用如下命令解锁:[root@rs-server~]#usermod-Umingongge#-Llock#-Uunlock6。文件管理这里的文件管理是指用户信息的存储重要文件:/etc/passwd,/etc/shadow这两个文件。[root@rs-server~]#stat/etc/passwdFile:'/etc/passwd'Size:945Blocks:8IOBlock:4096regularfileDevice:fd00h/64768dInode:17135889Links:1Access:(0644/-rw-r--r--)Uid:(0/root)Gid:(0/root)访问:2019-08-0601:14:37.439994172+0800修改:2019-08-0601:14:37.440994172+0800修改:2019-08-0601:14:37.442994172+0800出生:-[root@rs-server~]#stat/etc/shadowFile:'/etc/shadow'Size:741Blocks:8IOBlock:4096regularfileDevice:fd00h/64768dinode:17135890Links:1Access:(0000/----------)Uid:(0/root)Gid:(0/root)Access:2019-08-0601:14:37.445994172+0800修改:2019-08-0601:14:37.445994172+0800Change:2019-08-0601:14:37.447994172+0800Birth:-一般从上面的一些文件属性可以看出这些文件是否被篡改过,所以在general建议锁定这两个文件,root用户以外的用户没有权限修改和访问。7.启用防火墙使用系统防火墙过滤入站和出站流量。这是防止攻击的好策略,而且系统防火墙的规则可以一一设置,非常强大。建议启用它。Linux系统安全配置iptables服务介绍8.软件包管理对于系统中安装的软件,我们使用RPM包管理器进行管理。对于使用yum或apt-get命令列出的软件,在删除或卸载时,一定要使用以下命令:yum-yremovesoftware-package-namesudoapt-getremovesoftware-package-name9.DisableCrtl+Alt+DelRestart大多数服务器按下Crtl+Alt+Del组合键后,都会使用Serverrestart,这是对在线服务器绝对不友好的安全因素,必须禁止,否则误操作会影响很大。#CentOS6禁用Ctrl+Alt+Del重启功能#方法一:vi/etc/init/control-alt-delete.conf#startoncontrol-alt-delete#注释掉这一行#方法二:mv/etc/init/control-alt-delete.conf/etc/init/control-alt-delete.conf.bak#注意:两种方法都可以生效,无需重启系统对于CentOS7,方法不同:[root@rs-server~]#cat/etc/inittab#使用systemd时不再使用inittab。##在此处添加配置不会对您的系统产生任何影响。##Ctrl-Alt-Delete由/usr/lib/systemd/system/ctrl-alt-处理del.target##systemd使用“目标”而不是运行级别。默认情况下,有两个主要目标:##multi-user.target:类似于运行级别3#graphical.target:类似于运行级别5##要查看当前默认目标,运行:#systemctlget-default##要设置一个默认target,运行:#systemctlset-defaultTARGET.target#这个文件已经解释了相关的介绍。经测试,如果上面文件中的配置被注释掉,重启命令将不会生效:[root@rs-server~]#ll/usr/lib/systemd/system/ctrl-alt-del.targetlrwxrwxrwx。1rootroot13Mar1417:27/usr/lib/systemd/system/ctrl-alt-del.target->reboot.target这个ctrl-alt-del.target这是一个指向reboot.target的软链接。因此,最终正确的做法是:将此文件移动到其他目录,然后重新加载配置文件即可生效。如果您再次需要此功能,只需重新添加此软件链接即可。10.监控用户行为如果你的系统中有很多用户,那么收集每个用户的行为和他们的进程消耗的信息是非常重要的。用户分析可以等到处理了一些性能优化和安全问题的时候再做。但是如何监控和收集用户行为信息呢?有两个非常有用的工具“psacct”和“acct”,可用于监视系统中用户的操作和进程。[root@rs-server~]#yuminstallpsacct-y用法如下:ac统计用户连接时间ac#显示所有用户的总连接时间ac-p#显示每个用户的连接时间ac-d#displaysalluserconnectionsperdayTotaltimeacsilence#显示指定用户的连接时间ac-dsilence#显示指定用户每天的连接时间sa输出用户活动信息sa#显示所有用户执行命令的状态sa-u#按用户显示命令执行状态sa-m#按进程显示命令执行状态sa-p#按使用情况显示命令执行状态lastcomm输出最近命令执行信息lastcomm#显示所有执行命令lastcommsilence#显示指定用户执行命令lastcommls#显示指定命令执行状态otherlast#查看最近用户登录成功列表last-x#显示系统关机、重启等信息last-a#在最后一栏显示IPlast-d#对IP做域名解析last-R#不显示IP列last-n3#显示最后3条lastb#查看最近用户登录失败列表具体使用示例:[root@rs-server~]#ac-proot71.88total71.88[root@rs-server~]#sa-uroot0.00cpu1043kmem0ioacctonroot0.00cpu3842kmem0iosystemd-tty-askroot0.03cpu72576kmem0iopkttyagentroot0.00cpu32112kmem0iosystemctlroot0.00cpu2674kmemiosystemd-cgroupsroot0.07cpu37760kmem0iopsroot0.00cpu28160kmem0iogreproot0.00cpu1080kmem0ioacroot0.14cpu0kmem0iokworker/u256:0*root0.10cpu0kmem0iokworker/0:0*root0.02cpu0kmem0iokworker/0:2*[root@rs-server~]#lastcommsasarootpts/00.00secs星期二8月6日02:15[root@rs-server~]#last-xrootpts/0192.168.1.148月6日星期二00:48仍然登录roottty18月6日星期二00:48仍然登录[root@rs-server~]#lastbmingongssh:notty192.168.1.14TueAug601:11-01:11(00:00)mingongssh:notty192.168.1.14TueAug601:11-01:11(00:00)btmp于八月二开始601:11:27201911.定期检查日志。将系统及其重要日志保存在除本服务器以外的专业日志服务器上,以防止黑客通过分析日志侵入系统和应用程序。以下是常见的日志文件:12不言而喻,数据备份非常重要,尤其是重要的生产数据,必须在本地、异地、不同介质上备份保存。同时,还需要定期检查数据的完整性和可用性。Xtrabackup实现高数据备份和恢复。一个牛逼的企业级MySQL数据库备份方案,原来是这样的……关于误删数据恢复:不小心执行了rm-f,别急着跑!13、安全工具对于系统来说,常用的安全扫描工具是必不可少的,比如扫描开放端口的nmap。对于系统中的WEB应用,可以使用一些开源的工具:IBMAppScan、SQLMap等,这类商业产品也有很多,这里就不介绍了(而且不给我广告费).有针对文件的文件加密工具,也有一些针对系统的入侵检测和漏洞扫描工具。无论是开源还是商业,您都可以根据实际需求和企业成本来决定使用哪种工具。14、管理方法安全管理还需要有良好的流程和管理制度。否则,以上13点基本效果为0。有方法,但没有系统去实现方法!!因此,无论是小型企业还是大型企业,流程和管理制度始终领先于所有加工方式。人才是世界上最不可控的因素!!不要掉入陷阱,不要背锅!史上最全的服务器安全管理规范开源。我希望这些方法对你有所帮助。暗语并不容易。如果有帮助,请转发、分享、观看,支持米公。以上是农民工结合个人工作经历的一些总结,可能不完整或不正确。如果大家对加强系统安全有不同的理解或方法,欢迎在文末留言分享。我们将一起讨论和交流。携手共建更加强大、安全、可靠的Linux系统环境。关注移民哥技术之路微信号公众号,后台回复关键词:1024,获取一份最新技术干货。