Ubuntu 16.04实现SSH无密码登录/免密登录/自动登录(ssh-keygen/ssh-copy-id)

本文详细介绍如何使用ssh-keygen生成公钥与私钥,并利用ssh-copy-id将公钥复制到远程服务器,实现SSH免密码登录。适用于频繁进行远程操作的场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ssh-keygen:产生公钥与私钥(在~/.ssh)

ssh-copy-id:将本机的公钥复制到远程机器的authorized_keys文件中(在~/.ssh),ssh-copy-id也能让你有到远程机器的home,~./ssh和 ~/.ssh/authorized_keys的权利

一、在本地机器上使用ssh-keygen产生公钥私钥

ssh-keygen

一路回车即可。

二、用ssh-copy-id将公钥复制到远程机器中

ssh-copy-id -i ~/.ssh/id_rsa.pub remote@192.168.1.2

说明:如果有端口的要加上端口,比如-p 1234,然后输入远程主机密码回车即可。ssh-copy-id会将key写到远程机器的~/.ssh/authorized_key文件中。

三、下次直接SSH链接即可,不用输入密码。同一台远程机器可以有多个要远程主机的公钥。

 

参考:

http://blog.chinaunix.net/uid-26284395-id-2949145.html(以上内容转自此篇文章)

http://blog.youkuaiyun.com/john_f_lau/article/details/22303341

在阿里云ESC的Ubuntu 16.04服务器上设置SSH无密码登录并为应用账号配置sudo权限,需要按照以下步骤操作:首先,确保你的本地客户端安装了SSH密钥生成工具。在本地终端中执行命令 `ssh-keygen -t rsa -b 4096 -C [个人邮箱]` 来生成一对SSH密钥(如果尚未有密钥对)。然后,将生成的公钥内容添加到服务器的`~/.ssh/authorized_keys`文件中。这可以通过`ssh-copy-id root@[ECS公网IP]`命令来完成,或者手动编辑文件并追加公钥内容。这样一来,你就可以使用密钥对进行无密码登录了。 参考资源链接:[阿里云ESC新手指南:SSH登录配置与权限设置](https://wenku.csdn.net/doc/2ebjqr78jg?spm=1055.2569.3001.10343) 接下来,为应用账号配置sudo权限。首先,在服务器上使用`adduser [应用账号名]`命令创建新的应用账号,并为其设置密码。然后,将该账号添加到`sudogroup`组以赋予其sudo权限,执行命令`gpasswd -a [应用账号名] sudo`。最后,编辑`/etc/sudoers`文件,为新账号添加一行配置,例如: ``` [应用账号名] ALL=(ALL:ALL) ALL ``` 使用`visudo`命令来编辑`sudoers`文件,确保编辑过程中没有语法错误。完成这些步骤后,应用账号就能够执行需要sudo权限的命令了。务必在每次更改后重启SSH服务以使配置生效,使用命令`service ssh restart`。 通过这些配置,你可以确保在阿里云ESC上的Ubuntu 16.04服务器的安全性和管理效率。在操作过程中,注意审查每一步操作的权限设置,以防止安全风险。更多细节和操作指导,可以参阅《阿里云ESC新手指南:SSH登录配置与权限设置》。 参考资源链接:[阿里云ESC新手指南:SSH登录配置与权限设置](https://wenku.csdn.net/doc/2ebjqr78jg?spm=1055.2569.3001.10343)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值