Mac 与服务器 ssh 无密码登录

2017-07-03  本文已影响159人  简闻

今天我们也来聊聊 Mac 与服务器 ssh 无密码登录的问题

这里只聊 bashzsh 这两种情况

ssh 无密码登录

#可以看到两个密钥文件:id_rsa(私钥) id_rsa.pub(公钥)
#公钥是加密,私钥是解密(不要外传私钥)
$ ssh-keygen -t rsa -C "email@example.com" 

ssh-copy-id 命令可以把本地主机的公钥复制到远程主机的 authorized_keys 文件上,ssh-copy-id 命令也会给远程主机的用户主目录(home)和~/.ssh, 和 ~/.ssh/authorized_keys 设置合适的权限。

ssh-copy-id [-i [identity_file]] [user@]machine

-i:指定公钥文件

例子
1、把本地的 ssh 公钥文件安装到远程主机对应的账户下:

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

- 将公钥复制到服务器
~~ ~~# 先登录到远程服务器~~ ~~# 有的话添加(有的话不要删掉,因为别人可能做过免密登录),没有则新建一个就行~~ ~~# 以上要注意的是: 公钥要放在登录服务器所用的账号的家目录下,比如你用 jianwen 登录 远程服务器,就要把公钥放到 /home/jianwen/.ssh/ 下, authorized_keys 文件也是在这个目录下。~~ ~~scp ~/.ssh/id_rsa.pub username@hostname:~/.ssh~~ ~~cd ~/.ssh~~ ~~cat -n /root/.ssh/id_rsa.pub >> authorized_keys~~ ~~

- 修改服务端 ~/.ssh 文件夹权限为 700,修改 id_rsa.pub 的权限和 authorized_keys的权限
~~ ~~chmod 700 ~/.ssh~~ ~~chmod 600 ~/.ssh/authorized_keys~~ ~~

- 在 Mac 端 使用 ssh-copy-id User@ip 然后输入一次密码就可以了,以后就可以正常使用别名登录了

注:* ssh-copy-id 命令可以把本地主机的公钥复制到远程主机的authorized_keys文件上,ssh-copy-id命令也会给远程主机的用户主目录(home)和~/.ssh, 和~/.ssh/authorized_keys设置合适的权限。

上一篇 下一篇

猜你喜欢

热点阅读