通过公钥远程登录sshd认证
一、root账号使用ssh-keygen 生成密匙
[root@vmware ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
a8:::::::cf:c7::3c:bd:::2b: root@vmware
The key's randomart image is:
+--[ RSA ]----+
| oooE. o.|
| o + o.. .+|
| + o +.+.++.|
| = . ..o..o|
| o S . |
| o |
| . |
| |
| |
+-----------------+
[root@vmware ~]#
二、发布公钥 -i 指定本地公钥存放路径
[root@vmware ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub root@10.0.1.113 -p36000
The authenticity of host '[10.0.1.113]:36000 ([10.0.1.113]:36000)' can't be established.
ECDSA key fingerprint is :6b::8a::4c::d8:ff:c6:::::d1:ff.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@10.0.1.113's password: Number of key(s) added: Now try logging into the machine, with: "ssh -p '36000' 'root@10.0.1.113'"
and check to make sure that only the key(s) you wanted were added.
三、直接登录
[root@vmware ~]# ssh root@10.0.1.113 -p36000
Last login: Thu May :: from 10.0.5.134
[root@yzh-jkb-privatization ~]#
四、直接查看拷贝过去的文件,会将id_dsa.pub 重命名为:
[root@yzh-jkb-privatization /]# ls /root/.ssh/authorized_keys
/root/.ssh/authorized_keys
[root@yzh-jkb-privatization .ssh]# cat authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC2/mi0jrbM13E8f89yFy+Mro2u+VYoSAiXgoOMrm2eZlss6nHdp8oV/qGTGucNPPVGGB6rHm6fvl/Z75u2CExJWUw3bSvevHieV3dfHngPHANDnxM6JXtr6DBjKVcKm3Bv+QlpvUJ/LJixnsTE4rgX4G1OWCP92q77eM0LEhD8eZllXCC/AkLxxxxxxxxxVNZehmR5BhJ/d4/Ad26idABX67dsQHZ1BxAha1AFF9uwZeNw1oJWqahkXFY8l+3YEWkrqBZsDZ67A81DmTBV7bbqwcqicHejHbScN101tg973XACGkXQxugPkGJxozn64CCs0dIt+Dk7qe4HYbTtE37
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCntTKU2jJhHWNt3PfMM2443B+t5R4mrgVQ3UoqRoSaSVMaLkSOpxl9NW2KPYf0U3MueV0rPpW1MnzL1YYITKqvhvrq0ae5ByRsdoEJK62tJc5RrPt2RHRdN1hrImz3Bmpc5mC9bAvqESzeTvMRhHZe/rL1WDZ4qDV1DGKCaxxxxxxxxEflwNVzUTAGXPQcKg54adnF4GYCEArzFd1PbGK6M24pjlQ3lBEyvMtZf2N8Jl/Q8bScbMCO2Fm/bjHyB33ix2RjCfvdF8hWY0weVgtdC6U+uRf1EGjTsEjU16EyfkmaoD+IYnlqF/ffSBHsr128cQaZhv+Af admin@steven.local
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDDK5fz2aaIL3FgYETzFemnzoemZhJ6VBE/+HfDvrNgAqkjr/FlPrJWO1iObpIBLgxxxxxxxg6X1l6oTONXc8W1G4bFDnAuw1r/ZY1uVPi/sadqEl7jPE8XLqeV70L7E5wDyrkq2H2sZr8rA4hQ/f+l12jLaG0b3pd2U7rA7ylazsd3eYxpik5B4/arepf/exy/zEyTQkTXo7OVbFae0fWn/yThlu6UA1cqIankYsX3toy5FhO1LO21dEFiWgJ+wcykQiE7fndErX+Ht9vX1T80oPqNSBFFRELUVHGP42R4JtVzFdjlrcwpAcdFJ9Ry8LutUEdGGl2xHM9Ki7Ld9+Z root@vmware
五、普通用户登录
1、本机创建用户 useradd username
2、echo xxx密码 | passwd --stdin username
3、ssh-copy-d -i /root/.ssh/id_rsa.pub username@10.0.1.113
六、把文件从远程主机 copy 到当前系统
[root@vmware ~]# scp -P36000 root@10.0.1.113:/jkb-install-.tar.gz /
jkb-install-.tar.gz % 47MB .3MB/s : ETA 拷贝目录 加 -r 参数
七、服务端配置
[root@vmware ~]# cat /etc/ssh/sshd_config
1、说明
#Port # 默认 不是注释
Port # 可以添加多个端口号 #ListenAddress 0.0.0.0 #设置sshd服务器绑定的ip地址,0.0.0.0 表示监听多有地址
ListenAddress 10.0.1.119 # 只允许此ip访问 #Protocol # 协议,如果用1,在后面添加 ,
#LogLevel INFO # 日志记录登记 info级别以上
#PermitRootLogin yes # 默认允许root用户登录 PasswordAuthentication yes # 密码验证
#PermitEmptyPasswords no # 允许密码为空 no #LoginGraceTime 2m # 登录时输入密码时间,如果超过改时间,强迫断线,无单位时为s #PrintMotd yes # 登录后是否显示一些信息,打印的是/etc/motd 这个文档的内容。 #UseDNS yes #判断客户端来源是否正常合法,因此会使用DNS反查客户主机名,如果在内网连接,设置为no 联机速度会快一些 UsePrivilegeSeparation sandbox
# 是否权限较低的程序提供用户操作,当普通用户登录,这个值会让sshd产生一个属于自己的sshd程序来使用,而不是root的程序,相对系统来说较为安全。
2、日志存放目录/var/log/secure
# The authpriv file has restricted access.
authpriv.* /var/log/secure
3、
通过公钥远程登录sshd认证的更多相关文章
- 禁止root远程登录 sshd问题:A protocol error occurred. Change of username or service not allowed
在研究Linux安全的时候遇到一个问题,原本打算修改linux直接远程root登陆,修改为sshd的配置文件后 Nano /etc/ssh/sshd_config 把#PermitRootLogin ...
- Linux使用Public Key方式远程登录
一.前言: ssh远程登录密码认证的方式有三种,password.Keyboard Interactive.Public Key 前面两种方式就是密码认证,含义都是一样大同小异.第三种是登录方式最安全 ...
- Linux配置SSH公钥认证与Jenkins远程登录进行自动发布
公钥认证,是使用一对加密字符串,一个称为公钥(public key), 任何人都可以看到其内容,用于加密:另一个称为密钥(private key),只有拥有者才能看到,用于解密. 在使用jenkins ...
- linux远程登录(Telnet、SSH)
系统:RHEL 5.5 64位,使用CentOS的yum源并作更新处理 参考书目<Linux兵书>/电子工业出版社/刘丽霞,细节之处稍有变动. 一.Telnet(远程登录推荐SSH) 1. ...
- SSH(远程登录)
在linux中SSH服务对应两个配置文件: ssh特点:在传输数据的时候,对文件加密后传输. ssh作用:为远程登录会话和其他网络服务提供安全性协议. ssh小结: 1.SSH是安全的加密协议,用于远 ...
- Windows通过SSH远程登录Linux主机
准备工作:1.Windows系统下装有VMware虚拟机且是Linux系统2.终端连接工具Xshell 63.本次实验系统IP如下 系统 IP Windows10 192.168.37.111 Cen ...
- [转帖]SSH远程登录配置文件sshd_config详解
SSH远程登录配置文件sshd_config详解 2016年06月02日 17:42:25 Field_Yang 阅读数 61386 版权声明:本文为博主原创文章,遵循CC 4.0 by-sa版权 ...
- ssh - OpenSSH SSH 客户端 (远程登录程序)
总览 (SYNOPSIS) ssh [-l login_name ] hostname | user@hostname [command ] ssh -words [-afgknqstvxACNTX1 ...
- Linux命令-1.远程登录
原网站:http://www.runoob.com/linux/linux-remote-login.html Linux一般作为服务器使用,而服务器一般放在机房,你不可能在机房操作你的Linux服务 ...
随机推荐
- Forward团队-爬虫豆瓣top250项目-团队编程项目开发环境搭建过程
本次结对编程和团队项目我都需要用python环境,所以环境的搭建是一样的.(本文部分内容引用自己博客:http://www.cnblogs.com/xingyunqi/p/7527411.html) ...
- 用jquery制作一个二级导航下拉菜单
1使用$(function(){...})获取到想要作用的HTML元素. 2通过使用children()方法寻找子元素. 3通过使用show()方法来显示HTML元素. 4通过 ...
- jenkins+maven+svn构建项目,及远程部署war包到tomcat上
要使用jenkins构建项目,当然要使用jenkins了,我使用的war版本的jenkins jenkins的官网 http://jenkins-ci.org/ 点击latest下载,但是可能因为天朝 ...
- vi 命令
学习的网址:http://www.cnblogs.com/88999660/articles/1581524.html vi filename: 打开或新建 vi +n filename: 光标置于第 ...
- AutoCompleteTextView 简单用法
http://blog.csdn.net/i_lovefish/article/details/17337999
- file新建文件及文件夹
1.获取包名的根目录:mRootPath = getFilesDir().getParent(); // ====mRootPath===/data/data/com.yoyu.file 获取SD卡 ...
- 【Android开发那点破事】打开APP加载页面实现
今天的破事呢就说说APP加载页面的实现.一般情况下,当APP打开的时候,我们需要做很多事情,比如检查网络连接啊,初始化一些配置啊等等.我们可以让这些事情在APP完全打开之前做完,然后呢在打开的过程中显 ...
- AngularJS 单元测试 Karma jasmine
当AngularJS项目越来越大时候,需要进行单元测试,可以先开发功能再进行测试,也可以先进行测试. 一.karma 是一个基于Node.js(先要安装)的JavaScript测试执行过程管理工具( ...
- 安装部署Ceph Calamari
根据http://ovirt-china.org/mediawiki/index.php/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2Ceph_Calamari 原文如下: ...
- 11.js循环与函数
Switch语句 Switch(变量){ : 如果变量和1的值相同,执行该处代码 break; : 如果变量和2的值相同,执行该处代码 break; : 如果变量和3的值相同,执行该处代码 break ...