当前位置:首页 > ubuntu相关 > 正文内容

ubuntu 中 ssh-copy-id命令常用法

ssh-copy-id命令


        ssh-copy-id命令可以把本地的ssh公钥文件安装到远程主机对应的账户下。 达到的功能: 将你的公共密钥填充到一个远程机器的authorized_keys文件中

先将密钥生成:

sudo ssh-keygen

方法一

cat ~/.ssh/id_rsa.pub | ssh user@server "cat - >> ~/.ssh/authorized_keys"


方法二

ssh-copy-id -i ~/.ssh/id_rsa.pub user@server


        是指将本地家目录下的公钥上传到以用户名为user、IP为server的主机中,并写入远程主机家目录
authorized_keys文件中

ssh-copy-id [-i] [本地密钥路径]] [远程用户名@远程主机IP]
ssh-copy-id [-i] [本地密钥路径]] [远程用户名@远程主机IP] [-f] -f : 为可选,意为追加至authorized_keys文件中


方法三

ssh-copy-id -i ~/.ssh/id_rsa.pub "-p 12222 user@server"

指远程主机端口号为 12222 的情况下使用的命令

提示一
.ssh文件夹默认为隐藏文件夹


提示二
如果每次输入连接ssh命令太麻烦可以按照以下方法
在用户家目录~/.ssh/目录下新建一个config文件

写入下面语句:

Host pc
HostName XXX.XXX.XXX.XXX
Port 22
User admin

保存退出就可以了
在终端输入 ssh pc 就可以连接到远程主机了
说明: pc 为你输入连接主机的代名
XXX 为你的远程主机 IP
22 为远程主机 ssh 端口
admin 为远程主机的用户名
(可向下写入多台主机登录信息,注意不要写在一行)


提示三
设置好了所有步骤后仍然需要输入远程主机的登录密码,可以看看远程主机文件权限
很多人在这个地方没有注意导至怎么都连都要密码,也试过修改/etc/ssh/sshd_config
文件配置仍无法达到想要的效果,下面就整理出来ssh远程免密码登录所需要的文件权限设置
1 远程主机文件夹权限,也就是远程主机的家目录,一般在/home/下,假设为 test
那么我们就要把这个文件夹设为 700 权限,如下命令:(root用户下修改目录权限)
chmod 700 /home/test

2 设置.ssh目录权限,路径为:/home/test/.ssh 命令如下:


chmod 700 ~/.ssh 或: chmod 700 /home/test/.ssh


3 设置存放公钥文件的权限,路径为/home/test/.ssh/authorized_deys


chmod 600 ~/.ssh/authorized_deys

 

注意: test 为用户的家目录文件夹名,ssh免密码登录严格按照这种权限格式设置


扫描二维码推送至手机访问。

版权声明:本文由uuucd.cn发布,如需转载请注明出处。

本文链接:https://www.uuucd.cn/ubuntu/7.html

标签: ubuntu相关

相关文章

Ubuntu系统Apache2部署SSL证书

Ubuntu系统Apache2部署SSL证书

本文介绍了如何在Ubuntu系统以及Apache 2中安装阿里云SSL证书。环境准备操作系统:UbuntuWeb服务器:Apache 2前提条件已从SSL证书控制台下载Apache服务器证书。已安装Open SSL。操作步骤1:运行以下命令...

Vsftpd服务器配置文件简单说明

Vsftpd服务器配置文件简单说明

本文章简单列出Vsftpd服务器配置文件vsftpd.conf的说明实际上是简单汉化后的参考参数listen=NO#listen_ipv6=YES## 允许匿名FTP? (默认禁用)。#anonymous_enable=NO## 取消注释以...

Linux常用修改权限的命令

Linux常用修改权限的命令

常用修改权限的命令:sudo chmod 600 ××× (只有所有者有读和写的权限)sudo chmod 644 ××× (所有者有读和写的权限,组用户读的权限)sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)s...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。