ssh远程登录的步骤(SSH远程登录的步骤与技巧)
如何远程登录服务器?SSH远程登录的步骤和技巧
在上一篇文章中,使用密钥代替密码进行SSH登录的 和步骤介绍了使用密钥代替密码进行SSH登录的基本 和步骤。,在实际操作中,可能会遇到一些其他的困难和问题。本文进一步了SSH登录远程服务器的要点和步骤,提供了具体的操作步骤。SSH是远程登录linux服务器的常用方式,所以为了实现本文的内容,需要有一台Linux服务器和一台客户端(本文中的客户端是Opensuse Linux系统,在Windows和Mac下实现 可能略有不同)。
1.密钥对生成
所谓钥匙对,可以理解为一把钥匙和一把锁。公钥就是一把锁,挂在墙上谁都看得见。私钥是一把钥匙,只能握在自己手里。一把钥匙开一把锁,所以钥匙总是成对的。在Linux系统下,可以使用ssh-keygen -t rsa命令生成密钥,其中-t rsa是指密钥类型,默认长度为2048位,也可以用-b 4096修改长度(例如4096位)。
在生成SSH密钥的过程中,会要求你指定一个文件来保存密钥,只需回车使用默认文件即可。然后,您需要输入一个密码来加密您的SSHKEY。SSH密钥将保存在。当前用户下的ssh/id_rsa文件。的主目录。SSH公钥将保存在。ssh/id_rsa.pub文件。(如果在命令前添加sudo,可能会放在根目录下,一般不会。如果要备份生成的密钥对,建议使用专用的u盘,这样可能会因为密钥丢失而造成损失。
为了成功复制,需要注意的是公钥文件的权限应该是400,可以通过chmod400ID _ rsa.pub更改。
2.将公钥复制到服务器
生成密钥对后,需要在服务器上添加公钥,相当于在门上挂了锁。与物理锁不同,一个服务器可以有不止一个公钥。如果几个不同的用户登录,每个人都可以将他们的公钥添加到服务器,然后他们可以用他们的私钥登录到服务器。有几种 可以将公钥复制到服务器,但前提是公钥服务器对应位置的文件夹和文件权限允许。
用普通密码登录到远程服务器,创建一个隐藏目录。ssh,并在该目录中创建一个authorized_keys文件(如果有,您不 不需要创建),并将目录和文件权限分别更改为600和700。这些命令是chmod 600 authorized_keys和chmod 700 ~/。分别是ssh。
以下命令可用于复制公钥。最方便的命令是ssh-copy-id。只需输入ssh-copy-id username @ remote-server-p,其中username和remote-server-ip替换为服务器用户名和地址(ip地址或域名),默认端口22不需要以下参数,否则需要添加-p和ssh端口号。输入远程用户的密码后,SSH公钥将自动上传。SSH公钥将保存在。远程Linux服务器的ssh/authorized_keys文件。
还可以使用命令组合将公钥命令直接附加到远程服务器文件中,这需要对shell操作有一定的了解。参考命令如下这个命令结合了cat和ssh。如果需要更改端口,还应该在host后面加上-p和端口号。
猫~/。ssh/id _ RSA . pub | ssh user @ host cat-~/。ssh/authorized _ key
,还可以通过scp命令将公钥复制到服务器,然后通过cat命令添加。这个命令可以理解为前一个命令的分解。实际上,scp也是在两台计算机之间复制文件最常用的命令之一。
Scp/home/。ssh/id _ RSA . pub root @ 192 . 168 . 1 . 653360/home/。ssh/id _ rsa.pub(也可以修改文件名)然后登录服务器使用cat命令追加文件内容
卡特彼勒id_rsa.pub授权_密钥
3.设置服务器配置文件以允许密钥登录。
打开并编辑/etc/ssh/sshd_config文件,并进行以下设置
RSA身份验证是
公钥身份验证是
,请注意root用户是否可以通过SSH登录
PermitRootLogin是
当你完成全部设置,并以密钥方式登录成功后,如果要提高系统安全性,避免无聊或者有特殊目的的黑客骚扰,可以禁用密码登录
密码认证号
,重新启动SSH服务
【root@host。ssh]$ service sshd重新启动
4.设置别名以快速访问服务器。
如果您管理多台服务器(甚至只有一台)。即使你没有。不用输入密码,每次登录都要记住ip地址或者域名和端口,真的很头疼。这样设置别名非常重要。在windows下,因为登录ssh一般需要第三方软件,所以设置别名的过程其实在登录服务器的时候就已经完成了。在linux下,需要修改(或创建)配置文件来实现别名。
创建或修改配置文件(~/。ssh/config)放在。客户机主目录的ssh目录,并输入服务器信息,如下所示
主机ecs //输入远程服务器的别名,即稍后要使用的简单名称。如果您想为同一台服务器设置不同的别名,只需用空格分隔名称。
主机名192。../输入服务器的IP地址或域名。
端口22 //输入端口号,默认为22。
root用户//输入登录帐户。
IdentityFile ~/。ssh/id_rsa //输入私钥文件的本地地址。
如果有多台服务器,按照上面的格式依次添加。添加并保存后,进入ssh ecs(别名)直接访问相应的服务器。,如果你的密钥是加密的(推荐),还是需要输入一次密码。
,上传密钥时不需要完全禁用密码。在实际使用中,也可以使用-i参数直接用key登录。例如,用法是ssh-I/root/mysshkey . PEM root @ 10 . 10 . 10 . 100。
华为ssh远程登录配置ssh远程登录为什么可以 我不能连接吗?