linux系统服务学习(三)远程管理SSH服务

这篇具有很好参考价值的文章主要介绍了linux系统服务学习(三)远程管理SSH服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

远程管理SSH服务

一、搭建SSH服务

1、关闭防火墙与SELinux

# 关闭firewalld防火墙
# 临时关闭
systemctl stop firewalld
# 关闭开机自启动
systemctl disable firewalld

# 关闭selinux
selinux是个比防火墙更高级的网络防护
# 临时关闭
setenforce 0
# 查看
getenforce 
# 修改配置文件  永久关闭
vim /etc/selinux/config
SELINUX=disabled

2、配置yum源

JumpServer配置外网YUM源 => 阿里云

# mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
# wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
# yum clean all
# yum makecache

3、openssh软件的安装

SSH服务底层的软件名称叫做openssh,open开源,ssh就是ssh服务。openssh属于C/S架构软件,其拥有客户端与服务器端。

客户端:ssh

服务端:openssh-server(sshd,服务端启动的一个服务)

安装步骤:

# yum install openssh -y

检查openssh是否安装成功

# rpm -qa |grep openssh
或
# yum list installed |grep openssh

#rpm -qf /usr/sbin/sshd
#rpm -qf /usr/bin/ssh 

获取openssh生成的文件列表

# rpm -ql openssh-server

# 配置文件
/etc/ssh/sshd_config					    =>      ssh服务的主配置文件
/etc/sysconfig/sshd
# 服务管理脚本
/usr/lib/systemd/system/sshd.service		=>      systemctl start sshd
# 文件共享服务 提供文件上传下载的服务
/usr/libexec/openssh/sftp-server
# 二进制文件程序文件
/usr/sbin/sshd
# 公钥生成工具
/usr/sbin/sshd-keygen
# man手册
/usr/share/man/man5/sshd_config.5.gz
/usr/share/man/man8/sftp-server.8.gz
/usr/share/man/man8/sshd.8.gz

# rpm -ql openssh-clients

# 客户端配置文件
/etc/ssh/ssh_config
# 远程copy命令 服务器间进行文件传输
/usr/bin/scp
# sftp客户端  上传下载文件操作
/usr/bin/sftp
/usr/bin/slogin
/usr/bin/ssh
/usr/bin/ssh-add
/usr/bin/ssh-agent
/usr/bin/ssh-copy-id
/usr/bin/ssh-keyscan
# 客户端man手册
/usr/share/man/man1/scp.1.gz
/usr/share/man/man1/sftp.1.gz
/usr/share/man/man1/slogin.1.gz
/usr/share/man/man1/ssh-add.1.gz
/usr/share/man/man1/ssh-agent.1.gz
/usr/share/man/man1/ssh-copy-id.1.gz
/usr/share/man/man1/ssh-keyscan.1.gz
/usr/share/man/man1/ssh.1.gz
/usr/share/man/man5/ssh_config.5.gz
/usr/share/man/man8/ssh-pkcs11-helper.8.gz

4、查看并修改ssh服务端的配置文件

# man 5 sshd_config

RealServer:禁止root账号远程登录

# man 5 sshd_config
PermitRootLogin	=> yes or no,默认为yes 代表允许通过root账号远程登录此服务器

# vim /etc/ssh/sshd_config
38行 PermitRootLogin no

5、sshd服务管理

# systemctl restart sshd	=>   重启
# systemctl status sshd		=> 	 状态
# systemctl stop sshd		=>   停止
# systemctl start sshd		=>   启动

# systemctl enable sshd		=>	 开机自启动
# systemctl disable sshd	=> 	 开机不自启

# ps -ef |grep sshd			=>	 进程
或
# netstat -tnlp |grep sshd	=> 	 端口 (lsof -i:端口号)
或
# ss -naltp |grep sshd

二、SSH服务任务解决方案

1、创建用户并授权

192.168.1.11(ssh client)--------------------------------192.168.1.12(sshd server)

第一步:创建用户与用户组(html前端组,tom与jerry)
#useradd tom
#useradd jerry
第二步:为用户添加密码

stdin standard input

# echo 123456 |passwd --stdin tom
# echo 123456 |passwd --stdin jerry

2、更改SSH默认端口

RealServer服务器端:

# vim /etc/ssh/sshd_config
17行 Port 3712

3、重启SSH服务

# systemctl restart sshd
或
# systemctl reload sshd
restart与reload的本质区别:

① restart其实相当于stop然后在start

② reload不停止现有业务,只是重新加载sshd对应的配置文件

测试:tom远程连接

# ssh -p 3721 tom@192.168.1.12

4、禁用域名查询 默认sshd服务支持通过dns域名解析ip地址

#vi /etc/ssh/sshd_config 
115 #UseDNS yes
#把上面的yes 改成no 禁止dns查询,加快连接sshd服务的速度

5、SSH客户端不验证指纹

第一次连接远程服务器时:

The authenticity of host '11.1.1.100 (11.1.1.100)' can't be established.
ECDSA key fingerprint is SHA256:Y/cQNWWkX15o2MsJ5HOQBI2m8S33qIA+x3zys8J4pOY.
ECDSA key fingerprint is MD5:76:61:86:8b:d5:ee:bf:9c:60:e6:12:fa:f6:f0:74:36.
Are you sure you want to continue connecting (yes/no)?yes
Warning: Permanently added '11.1.1.100' (ECDSA) to the list of known hosts.

如果我们不想验证指纹,可以通过更改SSH客户端的配置文件

clients:

# vim /etc/ssh/ssh_config
35行 StrictHostKeyChecking no

三、SSH服务补充

1、scp命令

主要功能:用于Linux系统与Linux系统之间进行文件的传输(上传、下载)

上传:
# scp [选项] 本地文件路径 远程用户名@远程服务器的IP地址:远程文件存储路径
-r : 递归上传,主要针对文件夹
-P : 更换了SSH服务的默认端口必须使用-P选项
下载:
# scp [选项] 远程用户名@远程服务器的IP地址:远程文件路径 本地文件存储路径
-r : 递归上传,主要针对文件夹
-P : 更换了SSH服务的默认端口必须使用-P选项

2、踢出用户

# 查看当前在线用户
w
# 踢出某个账号
pkill -kill -t pts/1

四、SSH免密登录解决方案

1、为什么需要免密登录

安全,方便,快捷

2、SSH认证原理(基于用户名密码+基于密钥对)

① 回顾基于用户名密码的认证方式

② 基于密钥对(公钥与私钥)的认证方式 => 免密登录

A主机 => JumpServer,B主机 => RealServer

第一步:在A主机(JumpServer)生成一个密钥对(公钥和私钥)

第二步:把A主机的公钥通过网络拷贝到B主机(RealServer)上,然后把其内容追加到B主机的~/.ssh/authorized_keys

第三步:由A主机(JumpServer)向B主机(RealServer)发起登录请求,然后直接在B主机上进行公钥比对(判断A主机的公钥是否已经存储在B主机的authorized_keys文件中),如果存在且正确,则生成一个随机的字符串(如itcast),然后使用A主机的公钥对其加密得到加密的后字符串(如dXdh,34njasz!z.)

第四步:通过网络,由B主机将刚才生成的加密后的字符串传输给主机A,主机A接收到加密后的字符串以后,使用自己本地存储的私钥进行解密操作(得到itcast)

第五步:把解密得到的itcast发送到B主机,然后验证与刚才生成的字符串是否一致,如果一致,返回登录成功。反之,则返回登录失败。

到此免密登录全部完成!

3、SSH免密登录的具体实现

SSH免密的实现思路一共分为三个步骤(三步走)

第一步:在A主机针对某个账号(tom或jerry)生成公钥与私钥

第二步:使用某些方法把公钥发送到B主机中,然后追加到authorized_keys文件中

第三步:测试是否实现免密登录

☆ 方法一:比较常用(tom)

① 在A主机针对某个账号生成公钥与私钥

# ssh-keygen

注:如果不想一路确认,可以在ssh-keygen -P “”,直接生成公私钥

② 使用ssh-copy-id把公钥文件中的内容传输到服务器端的~/.ssh/authorized_keys文件中

# ssh-copy-id -p 3712 code@11.1.1.100
code@11.1.1.100's password:123456

③ 在JumpServer客户端测试免密登录是否成功

# ssh -p 3721 code@11.1.1.100
☆ 方法二:集群常用(jerry)

① 生成公钥与私钥

# ssh-keygen

② 把id_rsa.pub文件,scp到RealServer服务器端

# scp -P 3721 ~/.ssh/id_rsa.pub code@11.1.1.100:/home/code/

③ 在RealServer服务器端,把id_rsa.pub文件中的内容追加到~/.ssh/authorized_keys文件中

# cd ~
# cat id_rsa.pub >> ~/.ssh/authorized_keys

注意事项:以上配置也比较简单,但是实际应用时要注意文件的权限

RealServer:
~/.ssh : 700
~/.ssh/authorized_keys : 600

④ 测试免密是否成功文章来源地址https://www.toymoban.com/news/detail-659516.html

# ssh -p 3721 code@11.1.1.100

到了这里,关于linux系统服务学习(三)远程管理SSH服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Linux系统中实现便捷运维管理和远程访问的1Panel部署方法解析

    Linux系统中实现便捷运维管理和远程访问的1Panel部署方法解析

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面## 1. Linux 安装1Panel执行如下命令一

    2024年02月09日
    浏览(16)
  • Linux配置SSH远程登录管理

    Linux配置SSH远程登录管理

    目录 一、SSH协议 1.SSH简介 2.SSH的优点 3.SSH远程控制软件及服务 二、SSH远程管理配置 1.配置OpenSSH服务端 2.使用SSH客户端软件 (1)SSH远程登录 (2)scp远程传输文件 3.SSH登录验证的两种验证方式 (1)密码验证 (2)密钥对验证         SSH 为 Secure Shell的缩写, 为建立在应用

    2024年02月07日
    浏览(13)
  • 远程管理服务器 用户组创建 1(运维笔记)

    修改跳板机名称: 修改跳板机网络模式为仅主机模式,ssh连接 假设有三个开发人员: 为三个开发人员设置密码: 创建相应的目录,给开发人员使用: 查看开发人员属组: 创建一个组: 添加用户附加组 查看组信息 赋予权限,更改目录权限: 冒险位(setuid):4000针对一些命令,临

    2023年04月13日
    浏览(16)
  • ssh命令用于远程登录到其他计算机,实现安全的远程管理_linux ssh远程登录命令

    ssh命令用于远程登录到其他计算机,实现安全的远程管理_linux ssh远程登录命令

    文章标题 简介 一,参数列表 二,使用介绍 1. 连接远程服务器 2. 使用SSH密钥登录 2.1 生成密钥对 2.2 将公钥复制到远程服务器 3. 端口转发 3.1 本地端口转发 3.2 远程端口转发 4. X11转发 5. 文件传输与远程命令执行 5.1 文件传输 5.1.1 从本地向远程传输文件 5.1.2 从远程服务器下载

    2024年04月11日
    浏览(10)
  • 第七章 使用ssh服务管理远程主机

    第七章 使用ssh服务管理远程主机

    一、配置网卡服务 1、配置网卡参数 (1)、执行nmtui命令运行网络配置工具 (2)、选择编辑连接并按回车 (3)、选择以太网中网卡名称并编辑 (4)、将IPv4的配置方式改成手动模式 (5)、按下显示按钮显示详细信息 (6)、填写IP地址、子网掩码和网关并按下确定 (7)、

    2024年02月03日
    浏览(13)
  • 【Linux命令详解 | ssh命令】 ssh命令用于远程登录到其他计算机,实现安全的远程管理

    【Linux命令详解 | ssh命令】 ssh命令用于远程登录到其他计算机,实现安全的远程管理

    在编程和系统管理领域,远程管理是一项至关重要的任务。SSH(Secure Shell)命令是一种加密的网络协议,它提供了一种安全的方式,使您能够在不同的计算机之间进行远程连接和管理。通过使用SSH命令,您可以在远程计算机上执行命令、传输文件以及进行安全的远程登录。

    2024年02月12日
    浏览(10)
  • Linux 部署1Panel现代化运维管理面板&远程访问

    Linux 部署1Panel现代化运维管理面板&远程访问

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面 执行如下命令一键安装 1Panel: 安

    2024年02月09日
    浏览(47)
  • 实现远程访问Linux堡垒机:通过JumpServer系统进行安全的服务器管理

    实现远程访问Linux堡垒机:通过JumpServer系统进行安全的服务器管理

    正文开始前给大家推荐个网站,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站。 JumpServer 是广受欢迎的开源堡垒机,是符合 4A 规范的专业运维安全审计系统。JumpServer 帮助企业以更安全的方式管控和登录所有类型

    2024年02月10日
    浏览(15)
  • 如何在Linux上部署1Panel运维管理面板并远程访问内网Web端管理界面

    如何在Linux上部署1Panel运维管理面板并远程访问内网Web端管理界面

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面 执行如下命令一键安装 1Panel: 安

    2024年02月05日
    浏览(13)
  • Linux 部署1Panel 现代化运维管理面板进行公网远程访问

    Linux 部署1Panel 现代化运维管理面板进行公网远程访问

    🎬 鸽芷咕 :个人主页  🔥 个人专栏 :《速学数据结构》 《C语言进阶篇》 ⛺️生活的理想,就是为了理想的生活! 1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等 下面我

    2024年02月08日
    浏览(112)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包