环境内核信息:
[root@zabbix-01 ~]# uname -a
Linux lodboyedu-01 2.6.32-696.el6.x86_64 #1 SMP Tue Mar 21 19:29:05 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux

ssh服务介绍

SSH是Secure Shell Protocol的简写

SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输。确保了传递的数据安全

SSH服务主要提供两个服务功能

一是提供类似telnet远程联机服务器的服务,即SSH服务;

另一个是类似FTP服务的sftp-server,借助SSH协议来传输数据的,提供更安全的SFTP服务(vsftp,proftp)。

ssh服务的所在软件包:openssh-clients、openssh-server

[root@nfs01 ~]# rpm -ql openssh-clients
/etc/ssh/ssh_config --- ssh服务客户端配置文件
/usr/bin/.ssh.hmac
/usr/bin/scp --- ssh服务远程传输复制命令scp
/usr/bin/sftp --- ssh服务远程传输文件服务
/usr/bin/slogin --- ssh服务远程登陆命令
/usr/bin/ssh --- ssh服务远程登陆命令
/usr/bin/ssh-add
/usr/bin/ssh-agent
/usr/bin/ssh-copy-id --- ssh服务远程分发公钥命令
/usr/bin/ssh-keyscan
[root@nfs01 ~]# rpm -ql openssh-server
/etc/rc.d/init.d/sshd #ssh服务启动脚本文件
/etc/ssh/sshd_config #ssh服务配置文件
/etc/sysconfig/sshd #ssh服务创建密钥有关
/usr/sbin/.sshd.hmac #ssh服务加密算法有关文件
/usr/sbin/sshd #ssh服务进程启动命令

ssh远程登陆方式

[e:\~]$ ssh 10.0.0.31      #端口号不能改才能这样

Connecting to 10.0.0.31:...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'. Last login: Tue Oct :: from 10.0.0.253
[root@nfs01 ~]#

ssh服务认证过程与基于密钥认证过程

ssh服务认证连接过程

ssh服务基于密钥认证过程

ssh服务优化

ssh配置文件默认登陆参数修改

修改SSH服务的运行参数,是通过修改配置文件/etc/ssh/sshd_ config实现的。

一般来说SSH服务使用默认的配置已经能够很好的工作了,如果对安全要求不高,仅仅提供 SSH服务的情况,可以不需要修改任何配置。

SSH配置文件相关参数说明

命令参教

参数说明

Port

指定sshd进程监听的端口号,默认为22。可以使用多条指令监听多个端口。默认将在本机的所有网络接口上监听,但是可以通过 ListenAddress指定只在某个特定的接口上监听。

PermitEmptyPasswords

是否允许密码为空的用户远程登录。默认为"no"。

PermitRootLogin

是否允许root登录。可用值如下:" yes"(默认)表示允许。"no”表示禁止。

"without-password"表示禁止使用密码认证登录。" forced- commands-only"表示只有在指定了command选项的情况下才允许使用公钥认证登录。同时其它认证方法全部被禁止。这个值常用于做远程备份之类的事情。

1. 多开一个窗口

2. 临时多部署一条连接方式

3. 给普通用户 sudo权限

UseDNS

指定sshd是否应该对远程主机名进行反向解析,以检查此主机名是否与其IP地址真实对应。默认值为" yes"。

ListenAddress

指定监听并提供服务相应的网卡地址信息

更改ssh默认登陆配置执行方法为:

[root@centos ~]#cp /etc/ssh/sshd_config /etc/ssh/sshd_config.ori
##—>更改配置前进行备份,是系统管理员的一个良好的习惯。
[root@centos ~]#vi /etc/ssh/sshd_config #—>编辑 sshd_config
Port 4188 #—>ssh连接默认端口为22,这淮都知道。因此,为提高安全级別,建议改掉它。
PermitRootLogin no #—>root超级用户黑客都知道,建议禁止它远程登陆能力。
PermitEmptyPasswords no #—>禁止空密码登陆
UseDNS no #—>不使用DNS
GSSA PI Authentication no #->认证的

重点配置参数说明

#Port                   --- 表示修改ssh服务默认端口号
#AddressFamily any --- 指定监听ipv4地址,或是ipv6地址,或者所有都监听
#ListenAddress 0.0.0.0 --- 监听地址只能监听本地网卡上配置的地址,监听的网卡可以对请求做出相应

ssh服务秘钥登录配置

基于口令认证方式

[root@nfs01 ~]# ssh -p4188 10.0.0.41
root@10.0.0.41's password:
Last login: Wed Oct :: from 10.0.0.31
[root@backup ~]#

基于密钥认证方式

第一步、创建密钥对

[root@backup ~]# ssh-keygen -t rsa    ### -t 指定以什么加密方式这里使用的rsa方式
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
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:
8b:bd:a3::5d::e4:ea:0f:3a:d1::7a::f1: root@backup
The key's randomart image is:
+--[ RSA ]----+
| ..E |
| .o ... |
| oo.. . |
| +... . |
| o.+. . S |
|o.+ . o . |
| oo.. . o |
|.. o . .. |
|.. . .... |
+-----------------+
[root@backup ~]# ll ~/.ssh/
total
-rw------- root root Oct : id_rsa
-rw-r--r-- root root Oct : id_rsa.pub
-rw-r--r-- root root Oct : known_hosts

第二步、将公钥分发给存储服务器

[root@backup ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 10.0.0.31   ##-i指定公钥路径
root@10.0.0.31's password:
Now try logging into the machine, with "ssh '10.0.0.31'", and check in:
.ssh/authorized_keys
to make sure we haven't added extra keys that you weren't expecting.

第三步、登陆测试

[root@backup ssh]# ssh 10.0.0.31
Last login: Wed Oct :: from 172.16.1.41
[root@nfs01 ~]#

ssh服务、密钥登陆配置的更多相关文章

  1. 配置SSH无密钥登陆(三)

    配置SSH无密钥登陆 (1).关闭防火墙 对每个虚拟机进行如下操作:   su    chkconfig  iptables  off 执行之后重启虚拟机:reboot (2).关闭之后,在maste ...

  2. Linux中ssh介绍与ssh+key密钥登陆部署

    环境内核信息: [root@zabbix- ~]# uname -a Linux zabbix- -.el6.x86_64 # SMP Tue Mar :: UTC x86_64 x86_64 x86 ...

  3. Linux SSH 使用密钥登陆

    Linux SSH 使用密钥登陆 通常我们登录 Linux 服务器,我们需要使用密码进行登录,但是密码存在被暴力破解的可能. 可以将默认服务端口 22 改成其他不常用的端口. 可以设置非常复杂的密码. ...

  4. ssh免密登陆配置

    目录 ssh免密登陆 在A工作站上输入 B服务器上输入 登陆 ssh初次登陆询问 1.单次取消 2.ansible中增加链接参数 3.修改ansible配置参数[推荐] 4.修改服务器上的ssh_co ...

  5. SSH免密登陆配置过程和原理解析

    SSH免密登陆配置过程和原理解析 SSH免密登陆配置过很多次,但是对它的认识只限于配置,对它认证的过程和基本的原理并没有什么认识,最近又看了一下,这里对学习的结果进行记录. 提纲: 1.SSH免密登陆 ...

  6. ssh免密钥登陆的两种方式

    ssh 免密钥登陆的两种方式第一种:直接使用命令复制过去ssh-copy-id root@192.168.3.113批量复制for i in {113..140}; do ssh-copy-id ro ...

  7. ssh的配置,ssh打开密钥登陆,关闭密码登陆。

    刚装玩fedora,那么我们就以fedora为例来说一下怎么配置: 1.先确认是否已安装ssh服务: [root@localhost ~]# rpm -qa | grep openssh-server ...

  8. ssh无密钥登陆的简单配置

    主要目的是把本地的公钥放到远端被登陆的host上. 本地操作: # ssh-keygen # ssh-copy-id user@host 远端sshd_config配置: RSAAuthenticat ...

  9. Linux 配置SSH 无密钥登陆

    根据SSH 协议,每次登陆必须输入密码,比较麻烦,SSH还提供了公钥登陆,可以省去输入密码的步骤. 公钥登陆:用户将自己的公钥存储在远程主机上,登陆的时候,远程主机会向用户发送一串随机字符串,用户用自 ...

随机推荐

  1. 实例理解mapreduce任务的串行运行过程

    一.准备: eclipse,hadoop集群 注意:为了方便测试和修改,我用的是 windows 连接hadoop集群,这样在windows 下直接就能够执行 mapreduce 任务,方便程序调试. ...

  2. css中单位px和em,rem的区别[转载]

    PX特点 1. IE无法调整那些使用px作为单位的字体大小: 2. 国外的大部分网站能够调整的原因在于其使用了em或rem作为字体单位: 3. Firefox能够调整px和em,rem,但是96%以上 ...

  3. react-native多图选择、图片裁剪(支持ad/ios图片个数控制)

    扯淡: 目前关于rn比较知名并且封装好的图片选择控件很多,不过能同时支持多图片上传,个数控制兼容iOS/Ad的却寥寥无几,而今天介绍的这款框架可以实现:图片裁剪.最大图片个数限制.拍照.本地相册等功能 ...

  4. 《项目架构那点儿事》——浅析web层struts2的构建

    [前言]所谓快速开发,实质上为了节省项目的开支成本,减少程序员的开发时 间,固然就形成了种种二次封装的框架,也就是造轮子,然后我们的程序就按照这个轮子去画瓢,这里我就把公司这几次开发系统的框架源码贴出 ...

  5. android wear开发:为可穿戴设备创建一个通知 - Creating a Notification for Wearables

    注:本文内容来自:https://developer.android.com/training/wearables/notifications/creating.html 翻译水平有限,如有疏漏,欢迎 ...

  6. C#2.0中使用yield关键字简化枚举器的实现

    我们知道要使用foreach语句从客户端代码中调用迭代器,必需实现IEnumerable接口来公开枚举器,IEnumerable是用来公开枚举器的,它并不实现枚举器,要实现枚举器必需实现IEnumer ...

  7. 自定义view-滑动开关

    介绍 前段时间,我看到了一篇关于可滑动开关Switch组件的文章,效果图如下: 思路也挺简单的:这个控件主要由田径场式背景和滑块组成.他将田径场式背景分为3部分,最左边的半圆,中间的两条直线部分和最右 ...

  8. HDnoip2017题解

    那么,作为一名初入信息竞赛的选手,我也试着开始用博客记录自己的学习历程,那么这篇文章先简单介绍一下我自己吧. 本人开始学习信息学大概以来,主要都是用的C++,所以对其他语言并不是十分熟悉.2016我还 ...

  9. 自动化部署必备技能—部署yum仓库、定制rpm包

    部署yum仓库.定制rpm包 目录 第1章 扩展 - yum缓存 1.1 yum缓存使用步骤... 1 1.1.1 导言... 1 1.1.2 修改配置文件... 1 1.1.3 使用缓存... 1 ...

  10. .net core 支付宝,微信支付 二

    源码: https://github.com/aspros-luo/Qwerty.Payment/tree/develop 今天开始微信支付 微信支付坑比较多,支付流程也不太一样,微信支付需要先生成预 ...