ssh远程登录

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

ssh协议

                ---基于 tcp 的 22 号端口

确认是否有ssh包:

[root@server ~] rpm -qa | grep ssh

openssh-clients-8.7p1-24.el9_1.x86_64

openssh-server-8.7p1-24.el9_1.x86_64

1、 ssh的验证过程

第一阶段:版本协商以及tcp三次握手

第二阶段:秘钥和算法协商阶段

​                  服务端发送公钥文件,客户端主机无条件确认公钥(服务端确认客户端身份--内网)

​                  内部通过DH交换算法协商对称算法

第三阶段:认证阶段(客户端验证服务端)

通过用户名和密码验证

通过用户名和公钥验证(更安全)

 第四阶段:会话链接传输阶段

2、对ssh服务端的配置

【注】ssh服务安装包openssh-server

[root@server1 ~]# vim /etc/ssh/sshd_config   --- 配置ssh文件

17.Port 22  #监听端口,默认监听22端口 【默认可修改】

18.AddressFamily any #IPV4和IPV6协议家族用哪个,any表示二者均有

19.ListenAddress 0.0.0.0 #指明监控的地址,0.0.0.0表示本机的所有地址 【默认可修改】

20.ListenAddress :: #指明监听的IPV6的所有地址格式

48.LoginGraceTime 2m #登录的宽限时间,默认2分钟没有输入密码,则自动断开连接

49.PermitRootLogin yes #是否允许管理员远程登录,'yes'表示允许

51.MaxAuthTries 6 #最大认证尝试次数,最多可以尝试6次输入密码。之后需要等待某段时间后才能再次输入密码

52.MaxSessions 10 #允许的最大会话数

59.AuthorizedKeysFile .ssh/authorized_keys #选择基于密钥验证时,客户端生成一对公私钥之后,会将公钥放到.ssh/authorizd_keys里面

79.PasswordAuthentication no #是否允许支持基于口令的认证

129.UseDNS no #是否反解DNS,如果想让客户端连接服务器端快一些,这个可以改为no

146.Subsystem sftp /usr/libexec/openssh/sftp-server #支持 SFTP ,如果注释掉,则不支持sftp连接

154.AllowUsers user1 user2 #登录白名单(默认没有这个配置,需要自己手动添加),允许远程登录的用户。如果名单中没有的用户,则提示拒绝登录

3、实验配置

实验1:修改ssh服务的端口号

[root@server1 ~]# vim /etc/ssh/sshd_config 

Port 2222

[root@server1 ~] systemctl disable firewalld

[root@server1 ~] setenforce  0   ---  用于临时关闭 SELinux

[root@server1 ~] getenforce   --- 查看 SELinux当前执行模式
Permissive    --- 当前SELinux是宽松模式,可以进行一些违规操作

[root@server1 ~] systemctl restart sshd

实验2:拒绝root用户远程登陆  

#请保持服务器上至少有一个可以远程登陆的普通远程账号

[root@server1 ~]# vim /etc/ssh/sshd_config 

PermitRootLogin no

#重启服务后生效,使用时使用普通用户进行登陆,需要使用root用户时再切换

实验3:允许特定用户ssh登陆,其他用户都无法登陆  

[root@server1 ~]# vim /etc/ssh/sshd_config 

AllowUsers USERNAME
#USERNAME为你允许登陆的账号【需要在系统中useradd该账号】
#如果是多个用户,中间用空格隔开

#重启ssh服务后生效

实验四:公钥验证,免密登录

服务器地址: 192.168.146.129

一、Linux -- Linux:

客户端地址:192.168.146.131

1、生成非对称密钥:[root@localhost ~]# ssh-keygen -t rsa --- 用rsa算法生成密钥

ssh远程登录,RHCE,ssh,网络,服务器

密钥已成功生成

2、将当前主机的.ssh/id_rsa.pub文件发送到129主机的/.ssh/authorized_keys:

 ssh-copy-id 192.168.146.129

3、确定发起ssh连接不需要任何验证: ssh 192.168.146.129

ssh远程登录,RHCE,ssh,网络,服务器

二、Windows -- Linux:

注释:使用Xshell和Xftp实现

1、打开Xshell如图选择新建用户密钥生成向导

ssh远程登录,RHCE,ssh,网络,服务器

2、一直下一步

3、密钥名称任意,因为做免密,所以不设置密码

ssh远程登录,RHCE,ssh,网络,服务器

4、选择保存本地(能找到即可)

ssh远程登录,RHCE,ssh,网络,服务器

生成如图文件:

ssh远程登录,RHCE,ssh,网络,服务器

5、打开Xftp

将需要设置免密的服务器和Windows主机连接

如图将之前生成的server.pub发送到Linux的/root/.ssh目录下

ssh远程登录,RHCE,ssh,网络,服务器

再如下改名:[root@server ~]# mv .ssh/server.pub   .ssh/authorized_keys

最后就可以在登录root时选择公钥验证了文章来源地址https://www.toymoban.com/news/detail-810591.html

到了这里,关于ssh远程登录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 公网使用SSH远程登录macOS服务器【内网穿透】

    macOS系统自带有Secure Shell 客户端,它可让您登录到侦听传入SSH连接的远程服务器和台式机。我们可以用 ssh username@ip 来ssh到服务器,但通常局限于局域网内的远程。 本次教程,我们将使用cpolar内网穿透工具,映射ssh服务默认端口:22端口,获取公网地址,实现在公网环境下的

    2024年02月02日
    浏览(49)
  • CentOS Linux服务器无法远程 SSH 登录故障处理

    在管理 CentOS Linux 服务器时,远程 SSH 登录是一项关键功能。然而,有时候你可能会遇到无法通过 SSH 远程登录到服务器的问题。这篇文章将为你提供一些故障处理的步骤,帮助你解决这个问题。 以下是一些可能导致无法远程 SSH 登录的常见问题和相应的解决方法: 确认 SSH 服

    2024年02月05日
    浏览(61)
  • Linux Debian11服务器安装SSH,创建新用户并允许SSH远程登录,及SSH安全登录配置

    一、在 Debian 中添加 sudo 用户 1.创建新用户 首先,要创建用户,当前用户必须是 root 用户或者 sudo 用户。 使用下面adduser 命令创建一个用户名为test的sudo用户,按照提示输入密码,使用 adduser 命令,还会创建用户的主目录。 sudo adduser test 2.将用户成为 sudo 用户 创建test用户后,

    2024年02月05日
    浏览(64)
  • Linux Debian11服务器安装SSH,创建新用户并允许SSH远程登录,及SSH安全登录配置!

    在Debian 11服务器上安装SSH并创建新用户允许SSH远程登录的步骤如下: 步骤1:安装SSH 为了安装SSH服务器,您需要以root用户或具有sudo特权的用户身份登录到您的Debian 11服务器。 在终端中执行以下命令来安装SSH服务器: 步骤2:创建新用户 要创建一个新用户,您可以使用  add

    2024年02月12日
    浏览(53)
  • Windows服务器管理技巧:多用户登录设置、开启防火墙与SSH远程登录配置指南

    WindowsServer服务器管理技巧:对于使用WindowsServer服务器开发人员或者运维人员初学者来说,可能会遇到很多问题,比如:如何设置允许多用户同时登录服务器?如何开启服务器防火墙?Windows如何配置SSH远程登录?等等,如果遇到了这些问题,来看看这篇文章就能解决啦! 如果

    2024年02月13日
    浏览(51)
  • 简单几步学会Linux用户使用SSH远程免密登录,LinuxSSH服务器配置允许/禁止某些用户远程登录

    本文基于Linux上CentOS 7版本配合Xshell 7进行演示 目录 一.SSH简介 1.介绍 2.工作流程 二.具体配置免密步骤 1.配置前准备工作 2.正式配置过程 三.在服务器端配置SSH远程黑白名单 1.配置文件/etc/ssh/sshd_config部分参数解析 2.配置远程登录黑白名单 SSH用于计算机之间的加密登录,是一类

    2024年02月22日
    浏览(52)
  • Visual Studio Code连接远程服务器连接ssh,并设置免密登录以及汉化

    本文介绍如何在Visual Studio Code连接远程服务器连接ssh,并设置免密登录以及界面汉化等。 https://code.visualstudio.com/Download 1.进入官网下载对应版本的IDE 1.点击左侧的“Extensions”拓展下载插件包Python、Chinese(记得点击右下角弹出来的应用即可重新启动展示中文界面)、ssh 2.点击

    2024年02月16日
    浏览(61)
  • Xshell “所选的用户密钥未在远程主机上注册,请再试一次”SSH 登录远程linux服务器(良心整理)

    这个问题真的要把我逼疯了,为什么呢? 为了解决这个问题,我搜遍了CSDN、知乎、简书上的解决方案,CSDN上的回答真的是水文太多,相互抄,抄就抄吧,只抄一半。这让真正想解决问题的人走了太多的弯路。 也不知道是谁写的原文,可能作者解决了,但是写的很不清楚,也

    2023年04月15日
    浏览(45)
  • 解决Xshell远程登录不上的问题(1)Could not connect to xxxx (port 22): Connection failed.(2)SSH服务器拒绝了密码,请再试一次

    今天用Xshell连接自己虚拟主机(Linux)的ip地址会出现以下两个问题,查阅了很多资料,记录一下,希望能帮到大家, 如果解决了不要忘记点赞哟。 问题一: Could not connect to \\\'192.168.234.128\\\' (port 22): Connection failed. 问题二: SSH服务器拒绝了密码,请再试一次 1、首先打开Xshell,新

    2024年02月03日
    浏览(52)
  • SSH秘钥登录服务器

    1.通过命令窗口 a. 打开你的 git bash 窗口 b. 进入 .ssh 目录: cd ~/.ssh c. 找到 id_rsa.pub 文件: ls d. 查看公钥: cat id_rsa.pub 或者 vim id_rsa.pub git–查看本机 ssh 公钥,生成公钥 方法1:自动将ssh密钥复制到服务器 用户端 :第一种方法是用户将其个人计算机的公钥复制到远程服务器上

    2024年03月11日
    浏览(64)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包