systemctl start sshd.service # 开启ssh服务
systemctl stop firewalld # 关闭防火墙
ssh无密码登录
但是每次输入密码登录十分麻烦,有没有一种方式可以让服务器能够确定我的身份,无需输入密码可以直接通过认证?
ssh除了使用密码验证外,还提供了一种公私密钥的验证方式。客户端生成一个私钥,并生成一个与之对应的公钥,然后将公钥上传到服务器上。下面是Linux示例。
在客户端生成私钥、公钥(注意,在客户端完成):
# ssh-keygen -t rsa
-t指定要创建的密钥类型,默认就是rsa了,所以只执行ssh-keygen是一样的。
期间会提示你输入你私钥的加密密码。如果需要完全脱离密码,此处可留空,直接回车,否则以后每次连接需要本地解锁。
完成后,会当前用户的主目录下的~/.ssh/路径下生成两个文件id_rsa与id_rsa.pub分别是私钥与公钥。
接下来,要把生成的公钥上传到服务器上,同样还是在客户端执行以下的代码。
# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.1
其中root可以修改为你想要自动登录的服务器端用户名,192.168.1.1修改为你的VPS主机名或IP地址。
最后,ssh登录远程服务器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)