linux远程控制服务sshd和ssh

  • Post author:
  • Post category:linux




Openssh

openssh是主机进行远程连接的接口,

ssh为openssh的客户端,sshd为openssh的服务端。



ssh简介

ssh是专为远程登陆等场景提供安全性的协议,通过ssh,可以把所有传输的数据进行加密,也能防止Dns欺骗和Ip欺骗。



ssh的两种登陆方式

(1)口令登陆

ssh 远程主机用户@ip地址

如果需要调出图形界面,加入-X 选项

 ssh 远程主机用户@ip地址 -X

ssh服务的默认端口是22,如果不设置参数的话,会自动发送ssh到远程主机的22号端口,我们可以使用-p参数来修改端口号。

 ssh -p 123 远程主机用户@ip地址

在连接之前,客户端必须知道服务器端的ip地址,可以使用ifconfig命令来查看服务器端的ip地址。

在这里插入图片描述

如果是第一次连接,系统会发出询问,
在这里插入图片描述

主机未连接过,安全性不确定,是否确定要连接该主机.
在这里插入图片描述

输入”yes”,然后需要验证远程主机的密码,密码输入成功,就连接到远程主机了,连接成功后,所进行的操作都会在服务器中执行。

“exit”可以退出远程登录。

(2)公钥登录

口令登录需要每次输入远程主机的密码,这很不方便,如果想要免密登录,可以使用公钥。

简单来说,就是自己生成一个锁,然后把钥匙给远程主机。

生成钥匙和锁:

 ssh_keygen

在这里插入图片描述


Enter file in which to save the key (/root/.ssh/id_rsa):钥匙和锁的保存路径,建议默认,如果修改,还需修改其他配置文件才可生效。

Enter passphrase (empty for no passphrase):密码,因为要实现免密登录,所以为空。

查看/root/.ssh目录可以发现,锁和钥匙已经生成。

在这里插入图片描述

id_rsa 钥匙

id_rsa.pub 公钥,锁



生成了钥匙和锁,接下来,就要安锁,分钥匙了。


添加key认证

ssh-copy-id -i /root/.ssh/id_rsa.pub root@172.25.65.22
对172.25.65.22主机的超级用户指定key认证

在这里插入图片描述


发钥匙


不同主机之间远程发送文件使用scp命令,此命令不需要ssh连接也可完成。

scp /root/.ssh/id_rsa root@172.25.65.253:/root/.ssh
将钥匙id_rsa发送到主机172.25.65.263的/root/.ssh目录下

在这里插入图片描述


将钥匙id_rsa发送到远程主机的目标路径也要在/root/.ssh目录下

测试key认证是否生效

用远程主机连接:

在这里插入图片描述



提升远程连接的安全级别

1.进入sshd的配置文件:

 vim /etc/ssh/sshd_config

更改配置文件信息:

Denyusers student #用户黑名单

Allowuser student #用户白名单

78 PasswordAuthentication yes|no ##是否开启用户密码认证

48 PermitRootLogin yes|no ##是否允许超级用户登陆

在这里插入图片描述


黑名单和白名单一般不出现在配置文件中,可自己手动添加。


2.关闭sshd服务

 systemctl status sshd.service  #查看服务状态
           start              :开启服务
           stop               :关闭服务     
           restart            :重启服务
           reload             :重新加载服务
           enable             :设定服务开机启动
           disable            :设定服务开机不启动

在这里插入图片描述
在这里插入图片描述



版权声明:本文为weixin_44864840原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。