解决ssh暴力破解服务器密码

简介: 自从开通了阿里云态势感知后,经常收到提醒,你的服务器被攻击,我从后台查看大多数攻击都是ssh暴力破解密码,于是我就考虑如何解决这一问题,一开始想到的是,修改端口,接着就是封ip地址.那下边就看看我是如何操作的,
  自从开通了阿里云态势感知后,经常收到提醒,你的服务器被攻击,我从后台查看大多数攻击都是ssh暴力破解密码,于是我就考虑如何解决这一问题,一开始想到的是,修改端口,接着就是封ip地址.那下边就看看我是如何操作的,

一.修改ssh默认端口(我是修改成2222)
1.首先如果有防火墙脚本需要将2222端口添加进去,允许通过2222端口访问服务器.
2编辑ssh/sshd_config

vim /etc/ssh/sshd_config 
在#Port 22下边添加 Port 2222 退出保存

3.重启ssh服务
service sshd restart
4,查看端口
输入netstat -tlun
显示tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN
[root@feimail ~]# netstat -tlun
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:2222 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
5.退出测试
exit
ssh root@1.1.1.1 2222
出现一下命令提示输入密码表示设置成功
Connecting to 1.1.1.12222...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.

二.封ip
1,下载文章附件中的secure_ssh.sh,上传到服务器/root/目录下并给文件755权限(脚本里我设置的超过10次就封掉这个ip)
chmod 755 secure_ssh.sh
2.设置定时任务,每1分钟执行一次。
如果出现执行 crontab 命令如果报 command not found,就表明没有安装,那就安装
安装 crontab 执行 yum install -y vixie-cron ,然后再执行下边命令

crontab -e

/1 * sh /root/secure_ssh.sh
3,测试
用一个终端连接服务器连续输错10次密码
显示以下内容并不会提示输入密码,就成功了
Connection closed by foreign host.
在另一台电脑输入正确账号密码上查看/etc/hosts.deny 信息你会发现你刚才的那个ip会出现在里边(假如2.2.2.2是你第一次输错10次密码的ip)
vim /etc/hosts.deny
sshd:2.2.2.2:deny

总结:操作中需要注意的是一定要让2222端口通过防火墙.不然等你退出之后,你就再也登不上去了,当然你可以恢复快照,可是你的数据怎么办?附件中有我的简易防火墙,大家可以参考一下.
补充一下一开始我以为ssh端口被封只能通过恢复快照才能解决,之后我看了官方的视频发现,从管理控制台通过谅解终端可以登录,这种登陆时tty模式的,就相当于服务器在你面前你在操作,所以只要你知道用户账号密码,你就可以登陆,就算你忘记了,你可以通过控制台找回密码,才操作.

目录
相关文章
|
5天前
|
消息中间件 安全 Unix
SSH配置多台服务器之间的免密登陆以及登陆别名
SSH配置多台服务器之间的免密登陆以及登陆别名
18 1
|
28天前
|
SQL 弹性计算 安全
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
当我们通过阿里云的活动购买完云服务器之后,并不是立马就能使用了,还需要我们设置云服务器密码,配置安全组等基本操作之后才能使用,有的用户还需要购买并挂载数据盘到云服务器上,很多新手用户由于是初次使用阿里云服务器,因此并不知道这些设置的操作流程,下面给大家介绍下这些设置的具体操作流程。
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
|
1月前
|
缓存 网络协议 数据可视化
WinSCP下载安装并实现远程SSH本地服务器上传文件
WinSCP下载安装并实现远程SSH本地服务器上传文件
|
1月前
|
安全 Shell 网络安全
ssh配置无密码验证
ssh配置无密码验证要在SSH中配置无密码验证,您需要使用公钥验证【2月更文挑战第18天】
36 1
|
1月前
|
网络协议 Ubuntu Linux
「远程开发」VSCode使用SSH远程linux服务器 - 公网远程连接
「远程开发」VSCode使用SSH远程linux服务器 - 公网远程连接
107 0
|
2月前
|
安全 网络协议 Linux
|
2月前
|
安全 网络协议 Shell
SSH连接密码问题:原因、表现与解决方案
SSH连接密码问题:原因、表现与解决方案
80 3
|
2月前
|
数据安全/隐私保护
2012及其以上系统修改服务器密码指南
2012及其以上系统修改服务器密码指南
|
23天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
27天前
|
存储 弹性计算 数据可视化
要将ECS中的文件直接传输到阿里云网盘与相册(
【2月更文挑战第31天】要将ECS中的文件直接传输到阿里云网盘与相册(
413 4