centos8上配置openssh的安全
一,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的安全的更多相关文章
- centos8上配置openresty/nginx可访问php
一,创建一个测试站的目录 [root@yjweb data]# mkdir dev [root@yjweb data]# cd dev [root@yjweb dev]# mkdir think_ww ...
- 在Fedora18上配置个人的Hadoop开发环境
在Fedora18上配置个人的Hadoop开发环境 1. 背景 文章中讲述了类似于"personalcondor"的一种"personal hadoop" ...
- Centos8上搭建EMQ MQTT
layout: post title: Centos8上搭建EMQ MQTT subtitle: 在阿里云Centos8搭建EMQ并配置接入 date: 2020-3-11 author: Dapen ...
- 【转】在CentOS 8 / RHEL 8上配置主/从BIND DNS服务器
转自: https://zh.codepre.com/centos-2700.html 前言 本指南描述了在CentOS 8 / RHEL 8 Linux上配置BIND DNS服务器所需的步骤.在Ce ...
- CentOS8上安装MySQL
没有选择Win10上安装MySQL,个人感觉比较傻瓜式.同时相对Win10操作系统,个人更熟悉Unix/Linux操作系统,所以选择在CentOS8上安装MySQL数据库. 还是熟悉的yum安装,前提 ...
- 在Mac系统上配置Android真机调试环境
在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...
- 在 Linux 上配置一个 syslog 服务器
syslog服务器可以用作一个网络中的日志监控中心,所有能够通过网络来发送日志的设施(包含了Linux或Windows服务器,路由器,交换机以及其他主机)都可以把日志发送给它. 通过设置一个syslo ...
- 在Mac上配置adb命令
在Mac上配置adb命令 在Mac OS中使用adb命令时,应进行变量配置,步骤如下: 一.终端中输入 cd ~ 二.输入touch .bash_profile 回车 touch:如果没有,则创建文件 ...
- 在Linux上配置xampp后远程访问域名报错
在Linux上配置xampp后远程访问域名报错: New XAMPP security concept: Access to the requested object is only availabl ...
随机推荐
- Solr专题(四)Solr安全设置
因为solr的admin界面默认只需要知道ip和端口就能直接访问,如果被别有用心的人盯上就很容易给你的系统带来重大的破坏,所以我们应该限制访问. 请注意本例使用的是Solr7. Solr集成了以下几 ...
- postman -- 环境变量、全局变量使用
背景: [登录接口]中会返回sign值,[学生金币充值接口]会则需要用到该sign值,因此把sign设置为环境或全局变量,便于其他接口调用. 1.请求登录接口,获取sign值: 2.把sign值添加至 ...
- docker导出导入镜像docker save和docker load的用法
1.百度搜的第一步是先将容器提交为镜像,然后用你提交的镜像去做上面的备份操作,提交为镜像后会新增一个镜像,但是感觉没有必要,直接做上面的save操作也是可以用的 百度的:docker commit 容 ...
- Git切换分支开发
入职第一家公司做开发的时候使用的项目版本管理工具是svn,公司内部搭建的服务器:在第二.第三家公司做开发的时候,使用的项目版本管理工具是Git,现在大多数公司使用的也是Git.刚进入公司的时候首先做的 ...
- Vue render函数 函数时组件 jsx
常规组件使用 定义组件 components/list/list.vue <template> <ul> <li v-for="(item, index) in ...
- 编译 lua cjson模块
使用文档:http://www.kyne.com.au/~mark/software/lua-cjson-manual.html下载地址:http://www.kyne.com.au/%7Emark/ ...
- 文件存到aws的S3后, 调用getimagesize失败分析
一.问题 将图片在windows下用图片查看器修改后,上传到s3中,调用getimagesize获取图片信息总是返回false,其它图片正常: 代码如下: $fileName = 's3://sdk1 ...
- 面试官:分库分表之后,id 主键如何处理?
面试题 分库分表之后,id 主键如何处理? 面试官心理分析 其实这是分库分表之后你必然要面对的一个问题,就是 id 咋生成?因为要是分成多个表之后,每个表都是从 1 开始累加,那肯定不对啊,需要一个全 ...
- linux学习(七)文件打包和压缩命令
一.前言 在Windows操作系统下,我们会使用WinRAR或者快压等等的压缩软件来进行压缩或者解压. 在Linux下当然也存在压缩或解压的操作,下面我们就来学习一下在Linux下是怎么压缩和解压的! ...
- 详细分析 Java 中实现多线程的方法有几种?(从本质上出发)
详细分析 Java 中实现多线程的方法有几种?(从本质上出发) 正确的说法(从本质上出发) 实现多线程的官方正确方法: 2 种. Oracle 官网的文档说明 方法小结 方法一: 实现 Runnabl ...