Mac OS X下配置远程Linux 服务器SSH密钥认证自动登录1. 在本地机器创建公钥打开万能的终端,执行如下命令,无视一切输出,一路欢快地回车即可。 ssh-keygen -t rsa -C 'your email@domain.com' -t 指定密钥类型,默认即 rsa ,可以省略 2. 将公钥复制到ssh服务器将前一步骤生成的公钥~/id_rsa.pub文件,复制到ssh服务器对应用户下的~/.ssh/authorized_keys文件,可以有多种方式,这里只介绍常用的三种。
brew install ssh-copy-id ssh-copy-id username@hostname #将username和hostname替换为你的ssh服务器用户名和IP
cat ~/.ssh/id_rsa.pub | ssh username@hostname "mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"
scp ~/.ssh/id_rsa.pub username@hostname:~/ #将公钥文件复制至ssh服务器 ssh username@hostname #使用用户名和密码方式登录至ssh服务器 mkdir .ssh #若.ssh目录已存在,可省略此步 cat id_rsa.pub >> .ssh/authorized_keys #将公钥文件id_rsa.pub文件内容追加到authorized_keys文件 3. 快捷登录完成以上步骤后,即可使用以下命令直接登录ssh服务器,妈妈再也不用担心你记不住密码了 ssh username@hostname #将username替换为你的ssh服务器用户名,hostname替换为服务器的ip 但是,每次仍然需要输入ssh username@hostname,仍算不上最优的解决方案,要是能实现一键登录或一条命令登录最好不过了,下面来看看都有那些解决方法
vim ~/.ssh/config #若没有该文件,直接新建即可 添加文件内容格式如下: Host alias #自定义别名 HostName hostname #替换为你的ssh服务器ip或domain Port port #ssh服务器端口,默认为22 User user #ssh服务器用户名 IdentityFile ~/.ssh/id_rsa #第一个步骤生成的公钥文件对应的私钥文件 保存文件退出后,即可使用别名登录ssh服务器 ssh alias #alias是你在~/.ssh/config文件配置的别名 若有多个ssh账号需要配置,只要在~/.ssh/config空行再写即可,如下: Host foo HostName 192.168.2.222 Port 22 User test IdentityFile ~/.ssh/id_rsa Host alias HostName hostname Port port User user
echo "alias ssh-to-username='ssh username@hostname'" >> ~/.zshrc #将username和hostname替换为你的服务器信息 source ~/.zshrc #重新加载更改后的zshrc文件 ssh-to-username #使用别名,一条命令即可登录你的ssh服务器
下面关于SSH相关的文章您也可能喜欢,不妨参考下: Ubuntu 下配置 SSH服务全过程及问题解决 Ubuntu 14.04 下安装Samba 及SSH 服务端的方法 SSH服务远程访问Linux服务器登陆慢 提高Ubuntu的SSH登陆认证速度的办法 开启SSH服务让Android手机远程访问 Ubuntu 14.04 如何为Linux系统中的SSH添加双重认证 在 Linux 中为非 SSH 用户配置 SFTP 环境 Linux 上SSH 服务的配置和管理 本文永久更新链接地址:
|
|