如何免密登陆服务器
mac如何链接服务器
windows 上如果要链接服务器可以通过 xshell 和它附带的 xftp 来很方便的链接,最近域名备案通过了,也用上了 mac 如何像 windows 那样方便的操作服务器是我要解决的第一个问题。
起先在 App Store 上搜了个免费的工具虽然能用ssh连上但发现没有ftp的功能,后来知道了 mac 的终端自带链接服务器的功能:
ssh 用户名@ip -port
既然 mac 自带那也就没必要浪费 mac 金贵的磁盘空间了,果断删掉刚下的免费软件。
用什么代替xftp
ftp 的功能我目前用的是 ForkLit
体验不比 xftp 差,而且还是在 App Store 上直接下载的免费软件。
这让一来我的电脑能正常操作服务器了,但是总感觉哪里有点不对----每次都要输入密码以及要记住服务器 ip 地址。
在网上搜了下发现 mac 有一个前往服务器功能可以保存服务器 ip 但是用户名又是默认的 mac 用户名和我的阿里云服务器对不上,真是醉了,折腾好久之后找到了一个终极解决方案---免密登陆。
超越 xshell 的免密登陆
之前只用过 ssh 链接 git 没想到还能用来链接服务器
好了废话不多说直接上操作步骤
1 生成 id_rsa.pub
ssh-keygen -t rsa -C "yourEmail"
这个命令会生成公钥和私钥我们需要把公钥( id_rsa.pub
)弄到服务器的 ~/.ssh/authorized_keys
文件内.
cd ~/.ssh
vi id_rsa.pub
复制
一下。
2 登陆服务器
command+z+回车 呼出终端
输入密码登陆成功
cd ~/.ssh
vi authorized_keys #没有这个文件的话先用 touch authorized_keys 创建再,执行这条命令。
将输入法调为美式键盘
按 o
键进入编辑状态-粘贴
按下 esc
shift + ; 输入:
然后接着输入 wq
(:wq)保存并退出编辑状态
最后一步使用ssh进行验证和服务器别名
打开本机终端
cd ~/.ssh
touch config # 已经存在的话直接用 vi 编辑
vi config
语法如下
Host *
UseKeychain yes
Host serverAlias
HostName xxx.xxx.xxx.xxx
User userName
例如
Host *
UseKeychain yes
Host server1
HostName 148.157.254.111
User root
Host server2
HostName 148.157.254.112
User root
大功告成
下次要登陆服务器只需
ssh server1
可能要用到命令:
vi: 在 liunx 命令行 和 mac 终端以及 gitbash 中可以使用,作用是查看可编辑文件
touch:在 liunx 命令行 和 mac 终端以及 gitbash 中可以使用,作用是新建空文件
cd:进入一个具体的目录 例如 cd ~
就是进入根目录。 ../
上级目录 ./file
同级目录的file文件夹
ls:查看当前目录下的文件和文件夹
pwd:查看当前目录