什么是SSH:

SSH 为 Secure Shell 的缩写,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。当主机中开启openssh服务,那么就对外开放了远程连接的接口,ssh为openssh服务的客户端,sshd为openssh服务的服务端。

实验:1.安装开启sshd服务,首先使用用户名、密码登录方式登录。

在虚拟机中登录CentOS 7操作系统,使用命令 systemctl status sshd.service 查看sshd服务状态

可以看到CentOS 7中是默认安装sshd服务的,接下来使用putty64工具登录系统

首先查看centos 7地址,使用命令ip addr

打开putty工具,在Host Name(or IP address)输入虚拟机IP,在Port输入默认端口号22,点击Open打开

使用虚拟机用户名、密码进行登录

centos7操作SSH/SSHD服务(查看/启动/重启/自启)

查看状态: systemctl status sshd.service

启动服务: systemctl start sshd.service

重启服务: systemctl restart sshd.service

开机自启: systemctl enable sshd.service

2.配置sshd,root用户不可登录

首先编辑/etc/ssh/sshd_config文件,使用命令vim /etc/ssh/sshd_config

修改systemctl restart sshd后面的yes为no,将前面的#去掉,使用i进入编辑模式,进行修改,修改后按Esc,进入命令模式,然后用Shift+ZZ保存退出。

重启sshd服务,使用命令 systemctl restart sshd.service

重新打开putty,连接虚拟机,输入root用户名,密码,进行登录。正确的密码提示Access denied ,访问被拒绝。

3.使用公钥证书认证方式登录,非密码方式。

首先修改配置文件/etc/ssh/sshd_config,将下列三项前面的注释# 去掉,就是可以让秘钥登录

PubkeyAuthentication yes

AuthorizedKeysFile .ssh/authorized_keys

下载puttygen.exe工具,双击打开

点击Generate,开始生成密钥,在页面中间空白区域来回移动鼠标,可以快速生成密钥。

区域内生成的就是公钥,“Key comment”保持不变也可以编辑,用来对密钥介绍。“Key passphrase”是用来给私钥加密,“Confim passphrase”是重复输入密码,使用认证登录时,只加载私钥输入这个密码就可以登录系统。点击Save private key保存私钥到本地

复制公钥到服务器。点击公钥进行复制,粘贴到/root/.ssh/authorized_keys文件下。首先使用 mkdir /root/.ssh 创建目录,命令 mkdir /root/.ssh

修改目录权限为700,命令 chmod 700 /root/.ssh/

新建文件anthorized_keys,命令 vim /root/.ssh/authorized_keys,将公钥粘贴进去,保存退出(此时可以设置root为可以登录,使用putty打开,进行复制粘贴)

然后就可以使用秘钥登录了,首先打开putty输入虚拟机IP,端口号22,点击左侧SSH下拉框,进入Auth模块

点击Browser加载,本地的私钥文件,打开

回到了PuTTY登录页面输入root

直接输入自己私钥密码即可登录

*需要注意的就是储存公钥的目录一定要修改权限为700,公钥内容别粘贴错

4.设置sshd日志,单独存放至/var/ssh/sshd.log中

首先修改ssh程序。使用命令vim  /etc/ssh/sshd_config打开配置文件,修改SyslogFacility AUTHPRIV为SyslogFacility local5,保存退出

然后修改日志程序。使用命令Vim /etc/rsyslog.conf打开日志程序(注意是rsyslog.conf!!!),添加如下两行代码,并保存退出

# save sshd messages also to sshd.log

local5.*  /data/log/sshd.log

重启sshd服务以及syslog服务。使用命令systemctl restart sshd.service       service rsyslog restart

打开PuTTY使用公钥证书认证方式登录,查看日志。tail /var/log/sshd.log

SSH配置的更多相关文章

  1. mysql+ssh 配置(转载)

    Mysql+ssh配置 一.Linux平台间mysql+ssh配置 本机地址为:192.168.189.133 mysql服务器地址为:192.168.189.139 linux命令行下使用ssh命令 ...

  2. Ngrok远程桌面及ssh配置

    上一篇Ngrok 内网穿透利器 使用教程我们讲到Ngrok的基本使用教程,这篇描述一下Ngrok的远程桌面及ssh配置 Step 1 修改配置文件ngrok.cfg server_addr: &quo ...

  3. centos ssh配置使用

    配置 数据阶梯 CentOS SSH配置 默认CentOS已经安装了OpenSSH,即使你是最小化安装也是如此.所以这里就不介绍OpenSSH的安装了. SSH配置: 1.修改vi /etc/ssh/ ...

  4. CentOS SSH配置

    默认CentOS已经安装了OpenSSH,即使你是最小化安装也是如此.所以这里就不介绍OpenSSH的安装了. SSH配置: 1.修改vi /etc/ssh/sshd_config,根据模板将要修改的 ...

  5. github的SSH配置如下

    Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置. github的SSH配置如下: 一 . 设置Git的user name和email: $ git ...

  6. github SSH配置

    目录 github SSH配置 前言 ssh 配置 github SSH配置 前言 github有两种更新的渠道,一种是https的,一种是ssh的,其中https每次都要输入密码,非常烦.所以,最好 ...

  7. 记一次ssh配置的锅

    我们在使用git来管理代码的时候不可避免的要用到ssh密匙,这个密匙怎么配置的百度上很多. 我这边是使用sourcetree来配合管理代码的,但是我ssh配置好了以后无论是克隆代码还是推送代码都提示我 ...

  8. SSH配置免密登录

    [参考文章]:linux服务器ssh免密码登录 [参考文章]:ssh分发秘钥时出现错误“Permission denied (publickey,gssapi-keyex,gssapi-with-mi ...

  9. Gitlab的SSH配置(linux和windows双版本)

    1. 步骤 1.首先现在电脑端安装好git,windows端请安装Git for Windows,Linux端请自行网上查询(Ubuntu: sudo apt-get install git)   2 ...

  10. Linux服务器配置---ssh配置

    Ssh配置     通过配置文件,我们可以有效的管理ssh 1.空闲时间关闭连接 1)修改配置文件“/etc/ssh/sshd_config”,设置clientAliveInterval和client ...

随机推荐

  1. java课堂笔记

  2. Angular No name was provided for external module 'XXX' in output.globals 错误

    Angular 7 开发自定义库时,引用ngZorroAntd,build过程中出现 No name was provided for external module 'ng-zorro-antd' ...

  3. java中引用的概念

    强引用(StrongReference) 强引用就是指在程序代码之中普遍存在的,比如下面这段代码中的object和str都是强引用: 1 2 Object object = new Object(); ...

  4. MySQL【数值处理函数】的使用方法

    数值处理函数 下边列举一些数学上常用到的函数,在我们的业务中有数学计算时会很有用的: 名称 调用示例 示例结果 描述 ABS ABS(-1) 1 取绝对值 PI PI() 3.131593 返回圆周率 ...

  5. 集合练习 练习:每一个学生Student都有一个对应的归属地定义为String类型。学生属性:姓名,年龄 注意:姓名和年龄相同的视为同一个学生。保证学生的唯一性。 1、描述学生。 2、定义Map容器,将学生作为键,地址作为值存入集合中。 3、获取Map中的元素并进行排序。

    package com.rf.xs.map; public class Student implements Comparable<Student> { private String na ...

  6. ffmpeg奇数分辨率转码失败

    偶然遇到将目的分辨率设置成奇数(例如:854x481)导致ffmpeg转码失败(错误:width not divisible by 2 (854x481)) 于是去查了一下原因:由于转码后的pix_f ...

  7. firefox 屏蔽Backspace按键的后退功能

    直接上图

  8. SSE 向量乘矩阵

    struct Vector4 { float x, y, z, w; }; struct Matrix { ][]; }; void SSE_VectorMultiplyMatrix(const Ve ...

  9. <FAT文件系统> -- DBR

    FAT16是比较简单的文件系统,相比NFTS等文件系统,该系统的学习比较easy,容易上手,同时对于数据存储的机理以及数据的恢复有一定的帮助.FAT文件系统有一定的弊端,不能支持太大的数据存储. FA ...

  10. background属性冲突导致的部分浏览器背景图片不显示问题

    前几天在项目中遇到了一个让人摸不着头脑的bug,测试说页面显示有点问题并发了截图, 正常的显示状态是这样 首先我自信地用自己的手机检查了一下,没有问题,问清楚后得知是UC浏览器中出现的,UC的内核是u ...