一,openssh服务版本号的查看

1,查看当前sshd的版本号 :

[root@yjweb ~]# sshd --help
unknown option -- -
OpenSSH_7.8p1, OpenSSL 1.1.1 FIPS 11 Sep 2018

说明:sshd没有专门的打印版本号和帮助文档的命令,

当参数不正确时会自动打印这些信息

2,查看当前ssh客户端程序的版本号

[root@yjweb ~]# ssh -V
OpenSSH_7.8p1, OpenSSL 1.1.1 FIPS 11 Sep 2018

说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest

对应的源码可以访问这里获取: https://github.com/liuhongdi/

说明:作者:刘宏缔 邮箱: 371125307@qq.com

二,修改sshd的配置文件后,如何测试是否有效?

在重启 sshd 前检查配置文件的有效性和密匙的完整性,运行:

[root@yjweb ~]# sshd -t

无反馈则表示配置文件无问题

三,openssh的安全配置

编辑 配置文件:

[root@yjweb ~]# vi /etc/ssh/sshd_config

内容包括:

1,禁止使用root登录ssh

#PermitRootLogin yes
PermitRootLogin no

说明:默认值是yes,要修改为no

2,修改默认端口,不使用22,避免受到攻击

#Port 22
Port 31234

3,新添加一行:只允许指定的用户登录

AllowUsers webop

4,禁止密码登录:

PasswordAuthentication no

说明:要启用这一项,需要先配置可登录到server的密钥

四,修改配置后重启openssh

[root@yjweb ~]# systemctl restart sshd 

五,禁止root登录之后,再次用root连接ssh服务会提示报错:

[SSH] FAIL: x.x.x.x:22 - Connection refused

x.x.x.x是服务器的ip

说明:如果使用云服务器ecs,请注意修改服务器的安全规则,

在安全规则中增加我们为sshd修改的端口,

因为安全规则比我们自己的防火墙规则位于更外层

六,如果禁用密码登录,则需要设置密钥ssh登录:

1,在ssh客户端生成密码钥对

[root@yjweb ~]# ssh-keygen -t rsa

说明:中间一路回车即可,

不要设置密码

-t参数可以指定四种算法类型

[-t dsa | ecdsa | ed25519 | rsa]

我们选择 rsa

说明:查看参数可以使用通用的帮助命令:

[root@yjweb ~]# man ssh-keygen 

密钥生成后,可以从用户的home目录下.ssh目录看到

[root@yjweb ~]# ls .ssh/
authorized_keys id_rsa id_rsa.pub known_hosts

2,复制公钥到ssh服务器

用ssh-copy-id命令复制

[root@yjweb ~]# ssh-copy-id -i .ssh/id_rsa.pub root@121.122.123.134
/bin/ssh-copy-id: INFO: Source of key(s) to be installed: ".ssh/id_rsa.pub"
/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@121.122.123.134's password:
Number of key(s) added: 1
Now try logging into the machine, with: "ssh 'root@121.122.123.134'"
and check to make sure that only the key(s) you wanted were added.

登录到ssh服务器,查看authorized_keys

[root@os3 ~]# more .ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQDiZNKuLsJqi0M......

可以看到我们在a服务器的公钥已经成功添加到了ssh服务器的 authorized_keys文件上

3,登录时需要指定私钥文件的路径

如果你的私钥位于你当前账号的home目录下的.ssh文件夹下,这个是默认位置,即你没有改动过私钥文件的位置,则可以直接ssh,无需指定文件路径

例如:

[root@yjweb ~]# ssh root@121.122.123.134
Last login: Wed Mar 18 18:53:07 2020 from 121.105.107.47
[root@os3 ~]#

如果密钥的路径改名过或在特定目录,则需要指定位置,

用 -i参数即可

[root@yjweb ~]# ssh -p 1234 -i /root/testsshkey root@121.122.123.134
[root@os3 ~]#

七,查看当前的centos版本

[root@yjweb ~]# cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)

centos8上配置openssh的安全的更多相关文章

  1. centos8上配置openresty/nginx可访问php

    一,创建一个测试站的目录 [root@yjweb data]# mkdir dev [root@yjweb data]# cd dev [root@yjweb dev]# mkdir think_ww ...

  2. 在Fedora18上配置个人的Hadoop开发环境

    在Fedora18上配置个人的Hadoop开发环境 1.    背景 文章中讲述了类似于"personalcondor"的一种"personal hadoop" ...

  3. Centos8上搭建EMQ MQTT

    layout: post title: Centos8上搭建EMQ MQTT subtitle: 在阿里云Centos8搭建EMQ并配置接入 date: 2020-3-11 author: Dapen ...

  4. 【转】在CentOS 8 / RHEL 8上配置主/从BIND DNS服务器

    转自: https://zh.codepre.com/centos-2700.html 前言 本指南描述了在CentOS 8 / RHEL 8 Linux上配置BIND DNS服务器所需的步骤.在Ce ...

  5. CentOS8上安装MySQL

    没有选择Win10上安装MySQL,个人感觉比较傻瓜式.同时相对Win10操作系统,个人更熟悉Unix/Linux操作系统,所以选择在CentOS8上安装MySQL数据库. 还是熟悉的yum安装,前提 ...

  6. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  7. 在 Linux 上配置一个 syslog 服务器

    syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...

  8. 在Mac上配置adb命令

    在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...

  9. 在Linux上配置xampp后远程访问域名报错

    在Linux上配置xampp后远程访问域名报错: New XAMPP security concept: Access to the requested object is only availabl ...

随机推荐

  1. 实践案例丨基于 Raft 协议的分布式数据库系统应用

    摘要:简单介绍Raft协议的原理.以及存储节点(Pinetree)如何应用 Raft实现复制的一些工程实践经验. 1.引言 在华为分布式数据库的工程实践过程中,我们实现了一个计算存储分离. 底层存储基 ...

  2. loadrunner跑场景时报错Full MDB file. New error messages will be ignored

    这个原因是在controller跑场景时,controller的日志文件占用内存太大 解决办法:先找到controller的日志文件Results——Results Setting——找到日志的路径, ...

  3. 血的教训!千万别在生产使用这些 redis 指令

    哎,最近小黑哥又双叒叕犯事了. 事情是这样的,前一段时间小黑哥公司生产交易偶发报错,一番排查下来最终原因是因为 Redis 命令执行超时. 可是令人不解的是,生产交易仅仅使用 Redis set 这个 ...

  4. Github上如何添加 LICENSE 文件?

    什么是开源软件? 开源软件是所有人都可以修改和补充的软件,因为开源软件的 license 协议允许这样做. Git版本控制系统就是开源的软件. 实际上开源软件的一个重要组成部分就是添加 license ...

  5. apisix docker镜像构建及插件化开发

    高能劝退:lua开发,适合小白看!!! 前段时间有个项目,用的java程序做网关,压测tps只有1k多点,惨不忍睹. 后来公司有个大佬改用apisix做网关,tps飙升到1w多. 于是对神奇的apis ...

  6. 每日一道 LeetCode (48):最长回文子串

    每天 3 分钟,走上算法的逆袭之路. 前文合集 每日一道 LeetCode 前文合集 代码仓库 GitHub: https://github.com/meteor1993/LeetCode Gitee ...

  7. google protocol buffer——protobuf的问题和改进2

    这一系列文章主要是对protocol buffer这种编码格式的使用方式.特点.使用技巧进行说明,并在原生protobuf的基础上进行扩展和优化,使得它能更好地为我们服务. 在上一篇文章中,我们举例了 ...

  8. 2.Scala安装配置和使用

  9. VMware-workstation-full-安装教程

    网盘提取 图1中的包 链接:https://pan.baidu.com/s/11BnY2_v9cDfP1SXPoqOUWQ 提取码:jhfa (1) 点击Vware-workstation-full ...

  10. AOP参数校验

      1.切面依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId&g ...