卡拉娃之父 發表於 2024-8-21 00:00:00

Linux 服务器必备的安全设置(推荐)

<p>
        &nbsp;<img style="max-width:100%!important;height:auto!important;" title="Linux 服务器必备的安全设置(推荐)" alt="Linux 服务器必备的安全设置(推荐)" border="0" height="auto" src="https://zhuji.jb51.net/uploads/img/202305/a8c3c31bfc3a0dc44ba280cda8ff775a.jpg" width="auto"/></p><p>
        好不容易买了服务器,如果因为自己的疏忽,被黑客黑掉的话,那真的是太糟糕了!</p><p>
        下面告诉你一些简单的方法提高服务器的安全系数,我的云服务器就是这么配置的,虽然有些麻烦,但是感觉安心一些。</p><h3>
        修改 ssh 登陆配置&nbsp;</h3><p>
        &nbsp;</p><ol class="dp-xml list-paddingleft-2"><li>打开&nbsp;ssh&nbsp;配置文件&nbsp;&nbsp;</li><li>vim&nbsp;/etc/ssh/sshd_config&nbsp;&nbsp;</li><li>#修改以下几项&nbsp;&nbsp;</li><li>Port&nbsp;10000&nbsp;&nbsp;</li><li>#更改SSH端口,最好改为10000以上,别人扫描到端口的机率也会下降。防火墙要开放配置好的端口号,如果是阿里云服务器,你还需要去阿里云后台配置开发相应的端口才可以,否则登不上哦!如果你觉得麻烦,可以不用改&nbsp;&nbsp;</li><li>Protocol&nbsp;2&nbsp;&nbsp;</li><li>#禁用版本1协议,&nbsp;因为其设计缺陷,&nbsp;很容易使密码被黑掉。&nbsp;&nbsp;</li><li>PermitRootLogin&nbsp;no&nbsp;&nbsp;</li><li>#尝试任何情况先都不允许&nbsp;Root&nbsp;登录.&nbsp;生效后我们就不能直接以root的方式登录了,我们需要用一个普通的帐号来登录,然后用su来切换到root帐号,注意&nbsp;su和su&nbsp;-&nbsp;是有一点小小区别的。关键在于环境变量的不同,su&nbsp;-的环境变量更全面。&nbsp;</li><li>PermitEmptyPasswords&nbsp;no&nbsp;&nbsp;</li><li>#禁止空密码登陆。&nbsp;</li></ol><p>
        最后需要重启 sshd 服务</p><ol class="dp-xml list-paddingleft-2"><li>service&nbsp;sshd&nbsp;restart&nbsp;</li></ol><h3>
        禁止系统响应任何从外部/内部来的ping请求&nbsp;</h3><p>echo&nbsp;“1”<span class="tag">&gt;</span>&nbsp;/proc/sys/net/ipv4/icmp_echo_ignore_all&nbsp;</p><p>
        其默认值为 0</p><h3>
        用户管理</h3><p>
        &nbsp;</p><p>
        下面是基本的用户管理命令</p><ol class="dp-xml list-paddingleft-2"><li>查看用户列表:cat&nbsp;/etc/passwd&nbsp;&nbsp;</li><li>查看组列表:cat&nbsp;/etc/group&nbsp;&nbsp;</li><li>查看当前登陆用户:who&nbsp;&nbsp;</li><li>查看用户登陆历史记录:last&nbsp;</li></ol><p>
        一般需要删除系统默认的不必要的用户和组,避免被别人用来爆破:</p><ol class="dp-xml list-paddingleft-2"><li>userdel&nbsp;sync&nbsp;&nbsp;</li><li>userdel&nbsp;shutdown&nbsp;&nbsp;</li><li>#&nbsp;需要删除的多余用户共有:sync&nbsp;shutdown&nbsp;halt&nbsp;uucp&nbsp;operator&nbsp;games&nbsp;gopher&nbsp;&nbsp;</li><li>groupdel&nbsp;adm&nbsp;&nbsp;</li><li>groupdel&nbsp;games&nbsp;&nbsp;</li><li>#&nbsp;需要删除的多余用户组共有:adm&nbsp;lp&nbsp;games&nbsp;dip&nbsp;</li></ol><p>
        Linux中的帐号和口令是依据 /etc/passwd 、/etc/shadow、 /etc/group 、/etc/gshadow 这四个文档的,所以需要更改其权限提高安全性:</p><ol class="dp-xml list-paddingleft-2"><li>chattr&nbsp;+i&nbsp;/etc/passwd&nbsp;&nbsp;</li><li>chattr&nbsp;+i&nbsp;/etc/shadow&nbsp;&nbsp;</li><li>chattr&nbsp;+i&nbsp;/etc/group&nbsp;&nbsp;</li><li>chattr&nbsp;+i&nbsp;/etc/gshadow&nbsp;</li></ol><p>
        如果还原,把 +i 改成 -i ,再执行一下上面四条命令。</p><p>
        注:i属性:不允许对这个文件进行修改,删除或重命名,设定连结也无法写入或新增数据!只有 root 才能设定这个属性。</p><h3>
        创建新用户</h3><p>
        &nbsp;</p><p>
        创建新用户命令:adduser username</p><p>
        更改用户密码名:passwd username</p><p>
        个人用户的权限只可以在本home下有完整权限,其他目录要看别人授权。而经常需要root用户的权限,这时候sudo可以化身为root来操作。我记得我曾经sudo创建了文件,然后发现自己并没有读写权限,因为查看权限是root创建的。Linux系统命令还是很重要的,120 个《 必知必会的 Linux 系统常用命令 》,推荐大家看看。</p><p>
        sudoers 只有只读的权限,如果想要修改的话,需要先添加w权限:chmod -v u+w /etc/sudoers 然后就可以添加内容了,在下面的一行下追加新增的用户:wq保存退出,这时候要记得将写权限收回:chmod -v u-w /etc/sudoers</p><h3>
        赋予root权限</h3><p>
        &nbsp;</p><p>
        方法一:修改 /etc/sudoers 文件,找到下面一行,把前面的注释(#)去掉</p><ol class="dp-xml list-paddingleft-2"><li>##&nbsp;Allows&nbsp;people&nbsp;in&nbsp;group&nbsp;wheel&nbsp;to&nbsp;run&nbsp;all&nbsp;commands&nbsp;&nbsp;</li><li>#&nbsp;去掉下面一句的前面的注释&nbsp;#&nbsp;&nbsp;&nbsp;</li><li>%wheel&nbsp;<span class="attribute">ALL</span>=(ALL)&nbsp;ALL&nbsp;&nbsp;</li><li>#&nbsp;然后修改用户,使其属于root组(wheel),命令如下:&nbsp;&nbsp;</li><li>#&nbsp;usermod&nbsp;-g&nbsp;root&nbsp;uusama&nbsp;</li></ol><p>
        修改完毕,现在可以用uusama帐号登录,然后用命令 su – ,即可获得root权限进行操作。</p><p>
        方法二(推荐):修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示:</p><ol class="dp-xml list-paddingleft-2"><li>##&nbsp;Allow&nbsp;root&nbsp;to&nbsp;run&nbsp;any&nbsp;commands&nbsp;anywhere&nbsp;&nbsp;</li><li>root&nbsp;<span class="attribute">ALL</span>=(ALL)&nbsp;ALL&nbsp;&nbsp;</li><li>uusama&nbsp;<span class="attribute">ALL</span>=(ALL)&nbsp;ALL&nbsp;</li></ol><p>
        修改完毕,现在可以用uusama帐号登录,然后用命令 sudo -s ,即可获得root权限进行操作。</p><p>
        方法三:修改 /etc/passwd 文件,找到如下行,把用户ID修改为 0 ,如下所示:</p><ol class="dp-xml list-paddingleft-2"><li>uusama:x:500:500:tommy:/home/uusama:/bin/bash&nbsp;&nbsp;</li><li>#&nbsp;修改后如下&nbsp;&nbsp;</li><li>uusama:x:0:500:tommy:/home/uusama:/bin/bash&nbsp;</li></ol><p>
        保存,用uusama账户登录后,直接获取的就是root帐号的权限。</p><p>
        原文链接:https://mp.weixin.qq.com/s/qTeZ0c0hjUPRJm3Fd86ZmA</p>
頁: [1]
查看完整版本: Linux 服务器必备的安全设置(推荐)