文章目录
一、公钥密钥登陆
1. 通过SecureCRT创建公钥及密钥
生成公钥密钥
- 快速连接,选择SSH2
- 鉴权,选中PublicKey,属性
- 创建身份文件,选择密钥类型(一般选RSA或DSA),下一步
- 输入密码,确认通行短语,注释(以上可空,建议填写,在输入密码后,用密钥登录时,需要要输入密码),下一步
- 选择key的长度,建议选择最高位数,这个和密钥类型选择相关,不同类型,位数不同,下一步
- 这一步已经生成,下一页
- 选择生成密钥的格式及存放位置,完成
应用到SecureCRT及服务器
- 在服务器端中创建.ssh目录并授权
mkdir /root/.ssh
chmod 700 /root/.ssh
- 上传Identity.pub文件,转换为Openssh格式,并授权
ssh-keygen -i -f Identity.pub >> /root/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys
- 重启SSHD访问
service sshd restart
或者
/etc/rc.d/init.d/sshd restart
- 在SecureCRT端,快速连接,选择SSH2
- 鉴权,选中PublicKey,属性
- 全局设置,使用身份或证书文件选择Identity文件,确定
- 恭喜,以上即可通过公密钥登录服务器了
Ps.以上方式SecureCRT可以正常登陆,但如FinalShell等工具不一定能直接使用该公密钥,可考虑下面的方法。
2. 通过windows10创建公钥及密钥
生成公钥密钥
- 配置ssh-key,有可能需要安装ssh,可以通过安装Git来安装SSH
win10通过git安装SSh - 在C:\Users\自己的目录.ssh下,运行ssh-keygen,自己的目录下没有.ssh目录,可自己创建一个。
cd C:\Users\dssah\.ssh
ssh-keygen
红框部分为密码,不输入,为没有密码
应用到SecureCRT及其他终端以及服务器
- 在服务器端中创建.ssh目录并授权
mkdir /root/.ssh
chmod 700 /root/.ssh
- 上传id_rsa.pub文件,并授权
cat id_rsa.pub >> authorized_keys
chmod 600 /root/.ssh/authorized_keys
- 重启SSHD服务
service sshd restart
或者
/etc/rc.d/init.d/sshd restart
-
在SecureCRT端,快速连接,选择SSH2
-
鉴权,选中PublicKey,属性
-
全局设置,使用身份或证书文件选择id_rsa文件,确定
-
在FinalShell端,新建或对已创建的进行编辑,选择公钥,私钥处选择私钥文件
-
以上可以正常通过公密钥登录了
二、改变SSH的端口,及取消SSH密码登录,只允许密钥登录
改变SSH的端口
可以避免大量对22端口的攻击
- 关闭selinux
sed -i ‘/^SELINUX=/s/enforcing/disabled/’ /etc/selinux/config
- 编辑sshd_config
vi /etc/ssh/sshd_config
port 22
22端口可以自定义其他端口,比如
port 22334
,推荐范围5001~65535
Ps.
端口范围1~655350-1023:BSD保留端口,也叫系统端口,这些端口只有系统特许的进程才能使用
1024~5000:一般为服务器端口,不建议使用
5001~65535:绕开常用端口,随便使用,建议选用5001-9999之间的
- 保存sshd_config后,重启SSHD服务
service sshd restart
- 防火墙打开新的SSH端口
firewall-cmd –add-port=22334/tcp –permanent
firewall-cmd –reload
取消SSH密码登录
- 编辑sshd_config
vi /etc/ssh/sshd_config
将
PasswordAuthentication yes
改成
PasswordAuthentication no
- 保存sshd_config后,重启前要确认有无其他方式连接服务器,重启SSHD服务
service sshd restart
三、限制访问该服务器的IP范围
- 设置禁止所有IP连接服务器的SSH
vi /etc/hosts.deny
添加如下信息,保存退出
sshd:all:deny
- 设置允许连接服务器的SSH的IP
vi /etc/hosts.allow
添加类似如下信息,保存退出
sshd:192.168.1.106:allow
sshd:172.16.0.0/255.255.0.0:allow
- 重启SSHD服务
service sshd restart