SSH公钥(public key)验证

安全的设置服务器 登录,以前用用户名和密码登录服务器 这样不安全 ,用SSH公钥(public key)验证  这个办法能很好的解决 登录服务器 和安全登录服务器 的特色:


目标: Client 免输密码ssh登陆Server

SSH支持多种登陆验证方式,咱们默认使用的是键盘交互方式(keyboard-interactive),也就是手工输入密码的那种。这里咱们要改为公钥(publickey)验证方式,而且设置passphrase为空,以达到免输密码登陆的目的。

1. Client端:

cd ~/.ssh
#产生公钥文件(id_dsa.pub)和私钥文件(id_dsa), 类型DSA, 长度1024 bits
#注意询问passphrase的时候直接回车
ssh-keygen -t dsa -b 1024
#将公钥复制到远程主机去
scp id_dsa.pub Server:~/.ssh/id_dsa.pub.Client     //例如:scp id_dsa.pub 用户名@ip地址:目标路径 
                                                                                             scp  -P 端口号 id_dsa.pub 用户名@ip地址:目标路径 

2. Server端:

cd ~/.ssh
#将Client的公钥放入Server的信任列表
cat id_dsa.pub.Client >> authorized_keys
#更新权限,很重要
chmod 0600 *今后之后Client SSH登陆Server就不要手工输入密码了。


详细设置参数 可参考  http://manpages.ubuntu.com/manpages/gutsy/zh_CN/man1/scp.1.html



scp是linux下的远程拷贝html

命令:linux

(1)将本地文件拷贝到远程:scp  文件名 用户名@计算机IP或者计算机名称:远程路径 
(2)从远程将文件拷回本地:scp  用户名@计算机IP或者计算机名称:文件名本地路径
(3)将本地目录拷贝到远程:scp -r目录名   用户名@计算机IP或者计算机名称:远程路径
(4)从远程将目录拷回本地:scp-r   用户名@计算机IP或者计算机名称:目录名本地路径web

 

使用scp命令须要服务端linux提供ssh服务(linux默认是没有安装ssh服务的)ubuntu

1.是否安装ssh:可链接相应的ssh服务查看,sshhost;如出现:ssh: connect to host *** port22:Connection refused,说明还没有安装ssh服务。安全

2.安装ssh服务:sudo apt-get install openssh-server自动安装ssh服务。服务器

3.启动:sudo /etc/init.d/sshstartssh

4.中止:sudo /etc/init.d/sshstopspa

5.配置:ssh默认的端口是22,能够修改配置文件更改端口,而后重启ssh服务便可。(注:配置文件/etc/ssh/sshd_config)server

说明: 该命令将在用户的主目录/.ssh目录下面产生一对密钥 通常采用的ssh的rsa密钥:  id_rsa     私钥 id_rsa.pub 公钥 下述命令产生不一样类型的密钥 ssh-keygen -t dsa  ssh-keygen -t rsa  ssh-keygen -t rsa1 
相关文章
相关标签/搜索