免密登陆服务器并实现本地调试服务器代码(配置远程目录挂载)

免密登陆服务器并实现本地调试服务器代码(配置远程目录挂载)

Environment

Mac osserver: Ubuntu 14.04

一、免密登陆服务器

生成SSH私钥和公钥

ssh-keygen -t rsa

这样会在当前目录生成名为id_rsa的私钥文件和名为id_rsa.pub的公钥文件,-t表示密钥类型是rsa。

上传公钥文件

将本地的公钥文件上传到服务器上,然后在服务器需要免密登录的用户home目录下查看是否有 ~/.ssh/authorized_keys 这个文件, 如果没有手动创建一个:

touch ~/.ssh/authorized_keys

然后我们将公钥内容写入到authorized_keys文件中,因为这个文件可能已经有内容了,所以你可以使用如下方式

cat -n ~/.ssh/rsa.pub ~/.ssh/authorized_keys

这样就将公钥内容追加到authorized_keys中了,然后需要注意配置权限了,原作者给了建议

将.ssh目录的权限为700将authorized_keys目录的权限为600

ssh-copy-id 复制公钥

这个工具还蛮有用的,不过它会将我本地的所有公钥都传到服务器,使用方法:

ssh-copy-id username@remote-server

默认端口是22,如果不是,使用 ssh-copy-id 登录用户@服务器IP -p端口(例如我需要配置反向代理的服务器就使用这个方法)当然也可以自己手动scp到服务器的.ssh下。

参考:

https://zhuanlan.zhihu.com/p/28423720

二、远程目录挂载

安装sshfsbrew cask install osxfusebrew install sshfs

sshfs [email protected]:/home/user/xx ~/ ***/*** 远程挂载到本地桌面 可以在本地目录直接看到挂载的目录

相关命令:

df -h

不可删除,使用 umount 卸载

umount ~/Desktop/xx

参考:

https://blog.csdn.net/beyond__devil/article/details/73530511