欢迎光临seo外链资源网站,我们为你英文友情链接的信息及服务

seo外链资源

一个资源好的推广优化外链发布网站,为你解决外链获客难题

linux服务器基础安全配置(centos7)

作者:jcmp      发布时间:2021-05-10      浏览量:0
我的博客: https://bl

我的博客: https://blog.thuol.com。

一、说明

没有绝对的安全,只有相对的安全

二、1. 修改root密码

root作为超级管理员可以做很多事情(甚至删除系统),密码简单了容易被暴力破解,建议使用 密码生成器 生成一个16位复杂的密码(暴力破解也需要更长的时间),不要想着记住密码了,使用的时候就复制-粘贴吧,毕竟作为服务器当上线运行的时候不会经常有用到root权限。

计算一下暴力破解16位密码的时间(此段可跳过直接往下看)

单个密码的可能(95)=(26)小写字母+(26)大写字母+(10)数字+(32)键盘上的符号+(1)空格 16位密码共有多少种组合呢?

如果普通计算机的破解速度为每秒10000000个(一千万个还不包括软件运算和网络卡顿延迟时间。。。)。

一天=60×60×24=86400秒

假设黑客运气好点,暴力尝试一半就破解了,我们计算一下需要多少天。

后面还有两个个0呢。。。。

需要25470293324750000000天。。。自己计算一下需要多少年吧。一般别人不会跟你有生死仇吧,你的服务器也不会重要到国家战争级别吧。。不会有人从出生到入土都在破解你一台服务器。

计算了这么多,就是说明

密码越长越好

,多一位数就是指数级上升,自己记不住没关系,可以复制粘贴嘛。

密码长了就安全吗?当然不是,人家可以拦截你在网络上传输的数据包,你输入了什么都有可能看到,你复制-粘贴,人家也复制-粘贴。。。

密码长度越长可防止暴力破解

三、3. 更换ssh登录端口

ssh默认端口为22。 默认的东西你知我知 。

vim /etc/ssh/sshd_config

搜索Port修改为2222端口(端口可自行更改) 理论上可以改成随意端口,可是这些端口可能会和其他服务冲突, 可以参考这里。

Port 2222

firewall-cmd --zone=public --add-port=2222/tcp --permanent #开启防火墙2222端口systemctl restart firewalld.service #重启防火墙systemctl restart sshd.service #重启ssh服务。

四、4. 使用密钥+密码登录(双层保障)

当别人通过非暴力破解方式获取了你的服务器登录密码之后,密码再长也没有用了。这个时候就需要使用密钥文件验证了。如果加上密码安全系数相对会更高一点。 密钥是提前生成的。想要登录,必须拿到密钥文件。拿到密钥文件后才有资格输入密码。密钥文件也可以单独加密,这样要登录服务器就要获取到密钥文件,输入两个密码。 同时获取到这个三个条件( 密钥文件,密钥密码,用户密码 )难度可不是×3了。。。再被别人莫名其妙的登录那就要想想自己得罪谁了,被人家针对了。。 使用密钥+密码登录传送门: http://www.jianshu.com/p/b1eeb3f1a2c1。

五、5. 防火墙端口配置

六、6. 设置日志文件系统

使用history命令查看当前系统用户操作日志是默认10000行这样的用户是不够的。 而且同一个用户多个地方同时登录我们就查不到具体那条命令是哪个用户在哪个ip登录并执行的。 所以我们需要自己创建ssh日志记录。

vi /etc/profile

使用户登录后在 /tmp/dbasky 目录生成日志(目录可自定义修改,修改下面代码对应目录即可) 将以下内容粘贴到文件底部。

#########################日志记录##############################PS1="`whoami`@`hostname`:"'[$PWD]'historyUSER_IP=`who -u am i 2>/dev/null| awk '{print $NF}'|sed -e 's/[()]//g'`if [ "$USER_IP" = "" ]thenUSER_IP=`hostname`fiif [ ! -d /tmp/dbasky ]thenmkdir /tmp/dbaskychmod 777 /tmp/dbaskyfiif [ ! -d /tmp/dbasky/${LOGNAME} ]thenmkdir /tmp/dbasky/${LOGNAME}chmod 300 /tmp/dbasky/${LOGNAME}fiexport HISTSIZE=4096DT=`date "+%Y-%m-%d_%H:%M:%S"`export HISTFILE="/tmp/dbasky/${LOGNAME}/${USER_IP} dbasky.$DT"chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2>/dev/null。

使用脚本生效

source /etc/profile

退出用户,重新登录 查看日志(默认只有root有权限查看),不同用户会以用户名名单独创建目录,使用vi即可查看。

七、7. 最后禁止 root 用户使用 ssh 登入

当服务器基础环境搭建好之后就可以禁用掉root账号登录,平时只使用普通账号。 如果需要管理员权限可以在命令前加sudo。或者登录后切换到root用户(切换root也尽量少用)。

禁用root配置

vim /etc/ssh/sshd_config

搜索PermitRootLogin修改为no,yes为允许root账号登录。

PermitRootLogin no

重启ssh服务

systemctl restart sshd.service

**这个时候不要关闭当前的连接,另外开一个连接进行测试root是否能登录。同时保证有其他用户可以登录,如果其他用户不能登录还能改回来。否则你关闭了连接又没有其他账号可登录。想要控制远程的服务器,呵呵!!→_→ ** (真的关闭了当然不是不能连接,麻烦点。如果自建机房,带着键盘和显示器去机房吧。如果是云服务器,一般登录管理页面都有控制台。)。