在Ubuntu怎么设置ssh密钥并登录
一、建立用户
useradd -c <yourComment> -G admin -m <uesrname> -s /bin/bash
passwd <uesrname>
二、建立sshkey
1、客户自行生成方式
生成keyfile:
ssh-keygen -b 1024 -t dsa -N <yourKeypasswd> -f ~/.sshkey/192.168.0.1_whitepoplar_dsa
其中<yourKeypasswd>为你使用keyfile时的密码。
将生成私钥、公钥两个文件:
192.168.0.1_whitepoplar_dsa
192.168.0.1_whitepoplar_dsa.pub
上传keyfile:
ssh-copy-id -i ~/.sshkey/192.168.0.1_whitepoplar_dsa.pub <uesrname>@192.168.0.1
该命令自动将公钥复到<uesrname>用户的~/.ssh/authorized_keys文件中,完成后即可以密钥方式登录。
2、Server端生成方式
su – <uesrname>
ssh-keygen -b 1024 -t dsa
cd .ssh && cat id_dsa.pub > authorized_keys && chmod 400 *
mv {,username_192.168.0.1_}id_dsa
mv {,username_192.168.0.1_}id_dsa.pub
三、使用keyfile登录服务器(linux)
ubuntu中,ssh会默认搜索~/.ssh/目录下的所有key文件,并在登录时首先使用该目录下的keyfile逐个尝试登录,如果该目录下keyfile过多(超过5个),可造成所有ssh请求均无法登录问题(提示Too many authentication failures for username)。
因此,如果你管理的服务器较多,可将keyfile放在其他路径(如~/.sshkey/等),并在ssh命令行中使用使用-i、或在config中使用identityfile指定key文件,如:
1、命令行中指定keyfile
ssh -i ~/.sshkey/192.168.0.1_username_dsa username@192.168.0.1
2、config中指定keyfile(推荐)
vi ~/.ssh/config
——————-
Host myhost
HostName 192.168.0.1
User username
identityfile ~/.sshkey/192.168.0.1_username_dsa
——————-
设定config后,ssh登录、scp命令可简化为:
ssh myhost
scp test.txt myhost:
对于Windows客户端,PuTTY、SecureCRT均可支持密钥方式登录。
原文链接:http://www.ifanq.com/%e5%9c%a8ubuntu%e6%80%8e%e4%b9%88%e8%ae%be%e7%bd%aessh%e5%af%86%e9%92%a5%e5%b9%b6%e7%99%bb%e5%bd%95/
useradd -c <yourComment> -G admin -m <uesrname> -s /bin/bash
passwd <uesrname>
二、建立sshkey
1、客户自行生成方式
生成keyfile:
ssh-keygen -b 1024 -t dsa -N <yourKeypasswd> -f ~/.sshkey/192.168.0.1_whitepoplar_dsa
其中<yourKeypasswd>为你使用keyfile时的密码。
将生成私钥、公钥两个文件:
192.168.0.1_whitepoplar_dsa
192.168.0.1_whitepoplar_dsa.pub
上传keyfile:
ssh-copy-id -i ~/.sshkey/192.168.0.1_whitepoplar_dsa.pub <uesrname>@192.168.0.1
该命令自动将公钥复到<uesrname>用户的~/.ssh/authorized_keys文件中,完成后即可以密钥方式登录。
2、Server端生成方式
su – <uesrname>
ssh-keygen -b 1024 -t dsa
cd .ssh && cat id_dsa.pub > authorized_keys && chmod 400 *
mv {,username_192.168.0.1_}id_dsa
mv {,username_192.168.0.1_}id_dsa.pub
三、使用keyfile登录服务器(linux)
ubuntu中,ssh会默认搜索~/.ssh/目录下的所有key文件,并在登录时首先使用该目录下的keyfile逐个尝试登录,如果该目录下keyfile过多(超过5个),可造成所有ssh请求均无法登录问题(提示Too many authentication failures for username)。
因此,如果你管理的服务器较多,可将keyfile放在其他路径(如~/.sshkey/等),并在ssh命令行中使用使用-i、或在config中使用identityfile指定key文件,如:
1、命令行中指定keyfile
ssh -i ~/.sshkey/192.168.0.1_username_dsa username@192.168.0.1
2、config中指定keyfile(推荐)
vi ~/.ssh/config
——————-
Host myhost
HostName 192.168.0.1
User username
identityfile ~/.sshkey/192.168.0.1_username_dsa
——————-
设定config后,ssh登录、scp命令可简化为:
ssh myhost
scp test.txt myhost:
对于Windows客户端,PuTTY、SecureCRT均可支持密钥方式登录。
原文链接:http://www.ifanq.com/%e5%9c%a8ubuntu%e6%80%8e%e4%b9%88%e8%ae%be%e7%bd%aessh%e5%af%86%e9%92%a5%e5%b9%b6%e7%99%bb%e5%bd%95/