个人博客刚部署,隔壁开发还没开始馋,就有人来撬门(上)

本文涉及的产品
云防火墙,500元 1000GB
简介: 本文专门用于记录服务器运行过程中遇到的 安全问题及应对之法。

0x1、SSH 暴力破解攻击


描述


攻击者通过 密码字典随机组合密码 的方式尝试登陆服务器。 一般不会有明确攻击目标,针对的是全网机器,通过 扫描软件直接扫描整个广播域或网段


问了位安全大佬,回复如下:


不用过分担心,设置一个 复杂密码 完事,被搞的基本是用 弱口令(简单数字和字母) 的。


em,设置个复杂密码就好,如果你对谁来撬门感兴趣的话,可以键入下述命令:


grep "Failed password for invalid user" /var/log/secure | awk '{print $13}' | sort | uniq -c | sort -nr | more


输出结果


网络异常,图片无法展示
|


1503次,百度查下ip


网络异常,图片无法展示
|


国外的,基本上就是代理IP了,接着说下几种常见的应对之法:


① 更换ssh端口(推荐)


把ssh端口换成一个不容易被猜解的端口号(最大不能超过65535),一般默认是 22端口,也可以键入下述命令查看:


netstat  -anp|grep ssh


输出结果


网络异常,图片无法展示
|


然后键入下述命令修改sshd配置文件:


vim /etc/ssh/sshd_config


找到Port 22所在的那一行,去掉前面的 #,然后回车输入 Port 自定义端口号,比如:


网络异常,图片无法展示
|


这里保留22端口是为了避免配置失败,还能使用22端口进行ssh登录,等配置成功后再来删它!


接着 防火墙放行下设置的端口


firewall-cmd --zone=public --add-port=1024/tcp --permanent
firewall-cmd --reload
# 如果出现:FirewallD is not running 说明防火墙还没开启,使用下述命令开启:
systemctl start firewalld
# 通过下述命令确认防火墙状态,显示 active(running) 代表运行中
systemctl status firewalld
# 附:关闭防火墙命令
systemctl stop firewalld
# 附:移除端口
firewall-cmd --zone=public --remove-port=1024/tcp --permanent


再接着 向SELinux添加和修改ssh端口号semanage是SELinux的管理工具,输入sem然后按下 Tab看下有没有自动补全,没有的话需要自行安装一波:


yum install policycoreutils-python
yum provides semanage


安装完,通过下述命令向SELinux添加自定义的SSH端口:


semanage port -a -t ssh_port_t -p tcp 1024
# 附:删除端口
emanage port -d -t ssh_port_t -p tcp 端口号


然后,通过下述命令查看是否添加成功


semanage port -l | grep ssh


网络异常,图片无法展示
|


可以,重启下ssh服务


systemctl restart sshd.service


接着,ssh新端口试试看能否登陆:


ssh root@xxx.xxx.xxx.xxx -p 1024


如果能连上,可以把 /etc/ssh/sshd_config 中的22端口号删掉了,然后重启下ssh服务。此时再使用22端口访问:


网络异常,图片无法展示
|


完美,更改端口无法在根本上抵御 端口扫描,但总比没有好~


② 禁止root账号直接登录(推荐)


Linux默认管理员名为 root,只需知道root密码即可直接登录SSH,我们这样:


新建一个用户 → 禁用root用户登录 → 使用新账户登录 → su root → 输入root密码切换到root权限


知道流程,然后走一波设置命令:


# 新建用来登录的账户,比如这里的julia
useradd julia
# 设置密码,回车后输入两次密码
passwd julia
# 修改SSHD配置,禁用root登录
vim /etc/ssh/sshd_config


找到 PermitRootLogin yes,把 yes 改为 no,然后保存:


网络异常,图片无法展示
|


继续:


# 重启SSHD服务
service sshd restart


此时使用root账户尝试登录,即使密码正确也会提示权限被拒绝~


网络异常,图片无法展示
|


此时用前面建的账号登录:


ssh julia@xxx.xxx.xxx.xxx -p 1024
# 输入密码正常登录后,键入下述命令,回车后输入原先root账号
# 的密码即可获取root权限
su root


相关文章
|
安全 Java 关系型数据库
💖10分钟阿里云搭建个人网站(保姆级新手向)💖
我通常都会说自己搭建一个网站,利用阿里云/腾讯云/华为云/七牛云等等各种云服务器来快速搭建一个属于自己的装x小网站,虽然不是很牛x,但是对于说找实习、做毕业设计加分,这种纯粹是绰绰有余,别人会觉得你很有动手能力,话不多说,马上开始,给我十分钟,带你学会一个装x的小知识点。
1570 0
💖10分钟阿里云搭建个人网站(保姆级新手向)💖
|
12月前
|
存储 分布式计算 NoSQL
【探花交友】day01—项目介绍与环境搭建(二)
【探花交友】day01—项目介绍与环境搭建(二)
112 0
|
12月前
|
云安全 安全 Java
【探花交友】day01—项目介绍与环境搭建(五)
【探花交友】day01—项目介绍与环境搭建(五)
116 0
|
12月前
|
Web App开发 Dubbo NoSQL
【探花交友】day01—项目介绍与环境搭建(三)
【探花交友】day01—项目介绍与环境搭建(三)
212 0
|
12月前
【探花交友】day01—项目介绍与环境搭建(四)
【探花交友】day01—项目介绍与环境搭建(四)
57 0
|
12月前
|
JSON 前端开发 安全
【探花交友】day01—项目介绍与环境搭建(六)
【探花交友】day01—项目介绍与环境搭建(六)
119 0
|
12月前
|
搜索推荐 算法 大数据
【探花交友】day01—项目介绍与环境搭建(一)
【探花交友】day01—项目介绍与环境搭建
141 0
|
前端开发 JavaScript Java
基于Javaweb 开发的个人博客系统心灵小阁
基于Javaweb 开发的个人博客系统心灵小阁
262 0
基于Javaweb 开发的个人博客系统心灵小阁
|
缓存 JavaScript 前端开发
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站