更改Linux默认端口,并设置仅允许密钥登录

接上一篇文章,更改Linux默认端口,防止被恶意扫描

为了服务器安全。我们接着搞

上步骤:

一:首先运行Xshell5来生成密钥。如图:

一直如图操作:

密码自行决定是否设置,推荐默认。

到这里,务必选择保存公钥文件,待会要传到服务器上。

打开你保存的公钥文件,复制一份。

到了上代码的时候了:

#!/bin/bash #更改ssh连接端口并开启密钥登陆工具 rm $0 echo "请输入新的SSH端口:" read ss echo "您输入的端口为$ss,确认请回车,否则请ctrl+c退出" read ps #请使用xshell生成公钥来替换下面的AAAA-LW8=这段密钥。 mkdir -p /root/.ssh && chmod 600 /root/.ssh && echo ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA0Hg0M/p9GwdPGnQ+WopKygVxv9UOv243USfI02WuR+Jop1imyfmMdhzNoRM3r2CtObm56tHhcY7HrOGuA3eQiNQQYA6MgPEhwoB268MtFDhXttMXBHVCSRzOEIslo5TZTAIXnCZL8XXFUKDXqcuLwtA3XuupBdK36JeUoW9ALW8= > /root/.ssh/authorized_keys && chmod 700 /root/.ssh/authorized_keys cp /etc/ssh/sshd_config /etc/ssh/sshd_config1 sed -i "s/#Port 22/Port $ss/g" /etc/ssh/sshd_config sed -i "s/#AuthorizedKeysFile/AuthorizedKeysFile/g" /etc/ssh/sshd_config sed -i "s/#PasswordAuthentication yes/PasswordAuthentication no/g" /etc/ssh/sshd_config sed -i "s/PasswordAuthentication yes/PasswordAuthentication no/g" /etc/ssh/sshd_config iptables -I INPUT -p tcp -m tcp --dport 23 -j ACCEPT iptables-save service sshd restart echo "请不要急着退出终端,请重新连接一个终端确认是否成功,如果不成功,请执行以下操作" echo "rm /etc/ssh/sshd_config;mv /etc/ssh/sshd_config1 /etc/ssh/sshd_config;service sshd restart"

代码里面记得需要修改的就是

ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAIEA0Hg0M/p9GwdPGnQ+WopKygVxv9UOv243USfI02WuR+Jop1imyfmMdhzNoRM3r2CtObm56tHhcY7HrOGuA3eQiNQQYA6MgPEhwoB268MtFDhXttMXBHVCSRzOEIslo5TZTAIXnCZL8XXFUKDXqcuLwtA3XuupBdK36JeUoW9ALW8=

把这部分用刚刚复制的代码来替换,因为这是我的公钥,然后把上面的脚本保存为文件,在服务器上执行,再去测试,如果有问题,按照里面的提示恢复。

测试过大部分机器,如果不通过,请检查下防火墙是否开放端口,如果嫌麻烦,可以不更改端口,依然使用22端口。

有问题欢迎与我讨论,对于Putty的密钥来说,百度搜一下,key转pub就行。

» 本文链接:更改Linux默认端口,并设置仅允许密钥登录 » 转载请注明来源:刺客博客

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

记一次惊心的网站 TCP 队列问题排查经历

1455
来自专栏xcywt

WireShark 使用

1、干货 Wireshark(前称Ethereal)是一个网络封包分析软件。网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料。Wire...

2199
来自专栏前端萌媛的成长之路

一波webpack

1774
来自专栏Netkiller

PHP高级编程之守护进程

PHP高级编程之守护进程 摘要 2014-09-01 发表 2015-08-31 更新 2015-10-20 更新,增加优雅重启 ---- 目录 1. 什么是守...

3154
来自专栏用户2442861的专栏

non-blocking I/O Multiplexing + poll/epoll 的正确使用

在前面的文章中曾经粗略讲过poll,那时是用阻塞IO实现,在发送和接收数据量都较小情况下和网络状况良好的情况下是基本没有问题的,read 不会只接收部分数据,...

1122
来自专栏小狼的世界

Kubernetes基础:编排调度的那些Controllers

Kubernetes提供了很多Controller资源来管理、调度Pod,包括Replication Controller、ReplicaSet、Deploym...

1422
来自专栏Java编程技术

Java网络编程基础篇

网络通讯在系统交互中是必不可少的一部分,无论是面试还是工作中都是绕不过去的一部分,本节我们来谈谈Java网络编程中的一些知识,本chat内容如下:

2301
来自专栏Golang语言社区

Linux服务器最最基本安全策略

1、Linux SSH 安全策略一:关闭无关端口 网络上被攻陷的大多数主机,是黑客用扫描工具大范围进行扫描而被瞄准上的。所以,为了避免被扫描到,除了必要的端口,...

4949
来自专栏linux运维学习

linux学习第六十二篇:添加自定义监控项目,配置邮件告警,测试告警,不发邮件的问题处理

添加自定义监控项目 需求:监控某台web的80端口连接数,并出图 两步:1)zabbix监控中心创建监控项目;2)针对该监控项目以图形展现 对于第一步,需要到客...

31010
来自专栏散尽浮华

Linux系统下的ssh使用(依据个人经验总结)

对于linux运维工作者而言,使用ssh远程远程服务器是再熟悉不过的了!对于ssh的一些严格设置也关系到服务器的安全维护,今天在此,就本人工作中使用ssh的经验...

5677

扫码关注云+社区