当前位置: 首页> 健康> 科研 > SSH 远程登录系统和远程拷贝

SSH 远程登录系统和远程拷贝

时间:2025/7/16 20:47:24来源:https://blog.csdn.net/zhoutong2323/article/details/139221794 浏览次数:0次

文章目录

  • 目录

    目录

    文章目录

    前言

    一.SSH的基本用法

    SSH基本用法:

     SSH无密码登录

     二.SSH安全设置

    禁用密钥登录

    三.SSH限制用户

    禁止Root用户登录

     禁止普通用户登录

     四.SSH慢连接问题解决

    五.远程拷贝      


前言

很多时候服务器并没有服务器,我们也不能每次都通过控制台去管理服务器,这时候就需要远程登录,相比于Telnet,SSH采用密文传输更加安全。


一.SSH的基本用法

SSH基本用法:

#ssh 登录用户@登录服务器IP
[root@localhost ~]# ssh zt@192.168.23.133

注:指定的用户必须在登录服务器上存在否则出现如下情况,无论密码正确与否都无法登录

 SSH无密码登录

 如果做了密钥认证,远程登录时无需密码即可登录,具体操作如下:

演示案例使用主机 zt 用户连接靶机 tom 用户

  • 首先在当前服务器的用户下生成一个密钥对
[zt@localhost1 ~]$ ssh-keygen -f ~/.ssh/id_rsa -N ""-N:后面的双引号中没有空格,代表不对生成的私钥加密
-f:指定生成私钥的路径和名称,默认路径:~/.ssh/id_rsa.pub

 

 id_rsa:私钥           id_rsa.pub:公钥

  •  第二步将生成的公钥内容拷贝到需要访问的服务器对应用户(tom)的家目录下

[zt@localhost1 ~]$ ssh-copy-id tom@192.168.23.133在执行ssh-copy-id命令之前,需要确保本地计算机上已经生成了密钥对,
并且公钥已经保存在正确的位置(默认为~/.ssh/id_rsa.pub)
命令执行完成后会将公钥内容复制到uthorized_keys文件中,以实现无密码登录。

执行ssh-copy-id命令会自动在相应用户下创建.ssh/authorized_keys文件并保存公钥内容

  •  第三步通过zt用户可以无密钥登录tom用户 

 

 二.SSH安全设置

禁用密钥登录

以root用户更改配置文件如下:

[root@localhost ~]# vim /etc/ssh/sshd_config 将#PubkeyAuthentication yes 修改为 PubkeyAuthentication no[root@localhost ~]# systemctl restart sshd

禁止密码登录

[root@localhost ~]# vim /etc/ssh/sshd_config将 #PasswordAuthentication yes 改为 PasswordAuthentication no

三.SSH限制用户

禁止Root用户登录

默认情况下是可以用root用户登录到远端服务器的,如果要禁用root用户登录请执行如下操作:

[root@localhost ~]$ vim /etc/ssh/sshd_config将PermitRootLogin yes 改为 PermitRootLogin no

 禁止普通用户登录

禁止普通用户登录只需要在配置文件/etc/ssh/sshd_config中的任意一行添加DenyUsers userX 就可以限制用户X登录了。

[root@localhost ~]# vim /etc/ssh/sshd_config
[root@localhost ~]# systemctl restart sshd.service

 

 四.SSH慢连接问题解决

 有时候当我们在通过SSH登录一台服务器时,连接过程会比较慢,要等待十几秒才会出现输入密码的提示。很多时候是因为系统自动去做反向解析,把连接的IP地址反向解析成主机名,才会导致ssh速度慢。

为了防止这个问题,可以修改服务器上的配置,用vim编辑器打开/etc/ssh/sshd_config,找到UseDNS, 进行如下修改。

将#UseDNS yes修改为 no ,这里同时将注释符号#去掉,然后重启sshd即可。

五.远程拷贝      

有时候我们需要远程拷贝一些文件,例如,把文件或目录从A机器拷贝到B机器上去,这种情况下我们一般用scp或rsync。

以root用户的身份登录192.168.182.138并拷贝文件

当我们需要以特定身份登录目标服务器并拷贝文件时可以执行如下命令:

[root@192 ~]# scp /share_file zt@192.168.182.138:/share_file1

 当我们将需要拷贝目录时通常会出现如下错误:

上述报错产生的原因是因为/share_file是一个目录并非一个文件,若需要拷贝目录需要加上 -r选项

[root@192 ~]# scp -r /share_file zt@192.168.182.138:/share_file1

总结

关键字:SSH 远程登录系统和远程拷贝

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: