SSH远程访问及控制

前言:SSH是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功能。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。SSH协议提供了更好的安全性。

一:sshd的基本配置

1、xshell终端进行登录,证明已经把sshd端口开放。查看sshd是否开放:

2、查看命令文件和配置文件 。

3、配置完成之后需要开启sshd ----systemctl restart sshd

然后在另一台虚拟机进行访问,远程登录第一台,用ssh协议进行访问,输入第一台的用户名和IP地址。可以在里面建立文件和目录等,再回到第一台查看,新建的文件都在里面。

到第一台虚拟机里面查看是否有这个文件

为了安全考虑,这时需要一些修改,到第一台中进入配置文件 ----vim /etc/ssh/sshd_config ;

还需要进行wheel模块验证,只有再whell组中的用户才能够切换root用户,也可以切换其他用户,前提是要知道对方的密码。进入-----vim /etc/pam.d/su ,把第六行前面的“#”去掉,表示开启。

4、sshd服务的用户登录控制,可以设置允许输入密码的次数,进入sshd的配置文件,把它开启,默认输入密码的次数是6次

想登录zhangsan用户,这时可以看出登录密码的次数只有6次,默认的次数。输入6次之后会自动退出。

5、当希望只允许用户登录时,可以添加进白名单(AllowUsers),进入配置文件里面加一条命令

允许zhangsan登录

二:scp远程复制

通过scp命令可以利用SSH安全连接与远程主机相互复制文件。使用scp命令时,除了必须指定复制源、目标之外,还应指定目标主机地址、登录用户,执行后提示验证口令。

1、进入主机名的配置文件,添加两条信息(主机名、网络)

2、修改DNS的地址

3、想要添加一条信息

4、本机主机的映射文件 ----/etc/hosts 文件

进入这个文件:

想要把上面刚写的同步到其他服务器中

到对方的服务器中查看是否已经同步到了

三:sshd密钥对的登录

​ 密钥对验证方式可以为远程登录提供更好的安全性,通过ssh_keygen工具为当前用户创建密钥文件。

1、使用密钥对 进行身份验证,首先进入配置文件 ----vim /etc/ssh/shhd_config ,开启PubKeyAuthentication

2、用另一台服务器 生成密钥,先创建一个新的用户,再切换到这个用户

然后将上一步生成的公钥文件上传到服务器,并部署到服务器端用户的公钥数据库中。

到客户端查看上一步推送的公钥

3、想要免交互密码,避免登录每一台服务器都需要输入密码

使用密钥对验证的方式登录时,不需要知道目标用户的密码,而是改为验证客户端用户的私钥短语并检查双方的私钥、公钥文件是否配对,这样安全性更好。