SSH配置命令示例

SSH配置命令示例

一、环境

做2台虚拟机,一台做服务器,一台做客户端。

二、更改数值

在服务器里面进入配置文件/etc/ssh/sshd_config。

1、更改端口号

将Port22改为Port222
在这里插入图片描述
在这里插入图片描述
更改完之后重启服务,在客户端测试。
在这里插入图片描述
当时如果正在连着,更改了端口号并不会掉了,下次登录的时候就要更改端口号了。

2、更改认证期限

将期限从2m改为10s。
在这里插入图片描述
在这里插入图片描述
wq保存退出重启。
在这里插入图片描述
注意:这里如果输入密码慢了或者走开了它是不会自动断开的,这里设置5秒的意思是如果5秒之后你才输完密码,即使密码正确它也不给你登录。

3、root登录权限

禁止root登录:安全性考虑,如果root账号可以任意操作,非常不安全。
yes改为no。
在这里插入图片描述
验证结果,这里会发现,验证了3次密码,这里又关系到认证尝试次数,MaxAuthTries #最大认证尝试次数。
在这里插入图片描述
当我们远程,输入密码错误3次就退出不让输入了
默认连接输错密码3次就退出了,原因是因为客户端配置有一项NumberOfPasswordPrompts参数
man手册里它的定义是:Specifies the number of password prompts before giving up.
The argument to this keyword must be an integer.
The default is 3.(指定放弃密码提示的次数。此关键字的参数必须为整数。默认值是3。)
所以我们只能尝试登3次,这里是指客户端的尝试次数,服务器的是认证次数,服务器能认证几次取决于客户端能登陆几次,概念容易混淆!
所以我们可以使用 下面这则命令:
ssh -o NumberOfPasswordPrompts=5 root@192.168.152.130
#设置客户端登录时密码提示的次数
因为之前设置的禁止root登录,所以看下图:
在这里插入图片描述

4、设置黑白名单

需要手动添加。
在这里插入图片描述
在这里插入图片描述
注意:如果黑白名单只设置其中一个,那就匹配这一个,其他不匹配,如果同时设置黑白名单,它会匹配黑名单。
在实际生产环境中,建议只做白名单,考虑安全性问题,不能随意让别人远程,只放开你信任的用户即可。

三、免密登录

过程:
1.客户端发送公钥给服务端
2.服务端会把客户端的公钥和发送来的公钥进行对比,如果一致,这时,server会拿公钥加密一串数据给客户端
如果不一致,那么服务端会要求客户端再发送一个公钥做一个记录(从第一步再开始)
3.客户端收到后,用私钥解密,然后发送回server
4.服务端对比数据发现是自己发的,那么认为这个客户端是受信任的,那么连接建立。

总结:
ssh 是非对称加密
如何免密登录:
1.用工具制作公钥和私钥
2.把公钥发给服务器

配置

[root@client ~]# ssh-keygen  //在客户机生产公钥和私钥,可以在后面-t指定加密算法,默认是rsa加密
Enter file in which to save the key (/root/.ssh/id_rsa): //选择私钥存放的位置,默认是/root/.ssh/id_rsa,默认就好
Enter passphrase (empty for no passphrase):  // 这里设置私钥的密码,设置后在第一次连接的时候需要输入私钥密码,可以不设
Enter same passphrase again:   //重新输入以确认私钥密码,没设置可以enter跳过
Your identification has been saved in /root/.ssh/id_rsa. //私钥存放的位置
Your public key has been saved in /root/.ssh/id_rsa.pub.  //公钥存放的位置
[root@client ~]# ssh-copy-id root@192.168.152.130 //将公钥通过服务端的root用户给服务端
root@192.168.152.130's password:  //这里会要求输入一次服务端root用户的密码
Number of key(s) added: 1  // 显示添加了一个key
[root@client ~]# ssh root@192.168.152.130 //远程登录服务端
Last login: Tue May 25 19:37:58 2021 from 192.168.152.129
[root@service ~]#                        //可以发现不需要密码就能够登录

四、远程安全性传输

1、安全性复制scp

scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,而且scp传输是加密的。

(1)从本地拷贝文件到远程服务器
scp /opt/script/test.pl root@192.168.3.130:~/
将本地/opt/scritp/文件夹下的test.pl脚本文件拷贝到远程服务器192.168.3.130的用户目录下。

(2)从远程服务器拷贝文件到本地
http://www.baidu.com
scp root@192.168.3.130:~/test.pl /opt/script/
将远程服务器192.168.3.130用户目录下的test.pl文件拷贝到本地/opt/scritp/文件夹下。
注意:scp的用户要有读取相应文件的权限。
还存在一种是带属性的传输目录,命令是scp -rp。

2、安全性传输sftp

sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法,sftp 与 ftp 有着几乎一样的语法和功能
sftp是一种交互式的远程登录服务端,与ssh不同的是在sftp中输入的命令都是对服务端进行操作,如果想对客户端进行操作则需要在命令前加上l,不过交互模式有些命令无法使用,需要注意。
put:用于将客户端的文件上传至服务端
get:用于将服务端的文件下载至客户端
退出命令:quit、exit、bye
将服务端文件下载至客户端,要下载到哪个目录先用cd切过去
将客户端的文件上传至服务端,要上传到哪个目录先用cd切过去

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值