SSH远程管理 远程访问及控制

目录

SSH远程管理

SSH配置文件信息

登录验证方式

构建密钥免密登录ssh

SSH客户端程序(ssh、scp、sftp)

1、ssh

2、scp远程复制

3、sftp

上传

下载


SSH远程管理

SSH(Secure Shell) 是一种安全通道协议,主要用来实现字符界面的远程登录、远程复制等功 能。SSH  协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。与早 期的 Telent  (远程登录)、RSH(Remote Shell, 远程执行命令)、RCP(Remote File Copy, 远程文件复 制)等应用相比, SSH协议提供了更好的安全性。

openssh是实现ssh协议的开源软件项目,适用于UNIX,linux操作系统。

​​​​​​openssh官网

openssh服务器由openssh、openssh-server等软件包提供(默认已经安装,并将ssh服务添加为标准的系统服务)。只要拥有合法的登录的shell都可以远程登录系统。

sshd服务的配置文件默认位于/etc/ssh/sshd_config目录下(Centos系统)

SSH配置文件信息

#服务监听选项
port 22                                        #监听端口
ListenAddress 192.168.6.16                     #监听地址
Protocol 2                                     #使用SSH V2协议(建议开启)
…………
UseDNS no                                      #禁用DNS反向解析3
#用户登录控制
LoginGraceTime 2m                              #登录验证时间为2分钟(默认为2分钟)
PermitRootLogin no                             #禁用root用户登录(默认允许root用户登录)
MaxAuthTries 6                                 #最大重试次数
…………
PermitEmptyPasswords no                        #禁止空密码用户登录(建议开启)
PasswordAuthentication yes                     #启用密码验证
PubkeyAuthentication yes                       #启用密钥对验证
AuhorizedKeysFile  .ssh/authorized_keys        #指定公钥库文件
UsePAM yes                                     #判断客户端来源是正常合法的。(会DNS反向查询客户端的主机名)
PrintMotd yes                                  #登录后显示默认信息
SyslogFacility AUTHPRIV                        #登录时记录信息,记录类型为:AUTHPRIV(服务日志存放在:/var/log/secure)

当希望只允许或禁止某些用户登录时,可以使用AllowUsers 或 DenyUsers 配置,两者用法类似(注 意不要同时使用)例如:

AllowUsers jingyu ansheng chen@6.6.6.6
#只允许jingyu,ansheng chen,用户登录其中chen用户仅能够从ip地址:6.6.6.6的主机远程登录

登录验证方式

sshd    务支持两种验证方式——密码验证、密钥对验证,可以设置只使用其中一种方式,也可以两种方式 都启用。

      密码验证:对服务器中本地系统用户的登录名称、密码进行验证。这种方式使用最为简便, 但从客户端角度来看,正在连接的服务器有可能被假冒;从服务器角度来看,当遭遇密码

穷举(暴力破解)攻击时防御能力比较弱。

       密钥对验证:要求提供相匹配的密钥信息才能通过验证。通常先在客户端中创建一对密钥 文件(公钥、私钥),然后将公钥文件放到服务器中的指定位置。远程登录时,系统将使用  公钥、私钥进行加密/解密关联验证,大大增强了远程管理的安全性。该方式不易被假冒, 且可以免交互登录,在 Shell 中被广泛使用。

当密码验证、密钥对验证都启用时,服务器将优先使用密钥对验证。对于安全性要求较高的服 务器,建议将密码验证方式禁用,只允许启用密钥对验证方式;若没有特殊要求,则两种方式都可

启用。

PasswordAuthentication yes                        #启用密码验证
PubkeyAuthentication yes                          #启用密钥对验证
AuthorizedKeysFile  .ssh/authorized_keys          #指定公钥库文件

构建密钥免密登录ssh

密钥对验证方式可以为远程登录提供更好的安全性。整个过程包括四步,首先要在 SSH 客户端以zhangsan用户身份创建密钥对,并且要将创建的公钥文件上传至SSH 服务器端, 然后要将公钥信息导入服务器端的目标用户 lisi的公钥数据库,最后以服务器端用户 lisi 的身份登 录验证。

创建密钥对

ssh-keygen -t ecdsa

#-t 选项用于指定算法类型,可用的加密算法为 ecdsa 或 dsa

[root@jingyu ~]# ssh-keygen -t ecdsa
Generating public/private ecdsa key pair.
Enter file in which to save the key (/root/.ssh/id_ecdsa):         #指定私钥位置(默认为/root/.ssh)
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase):                        #设置私钥短语
Enter same passphrase again:                                       #确认私钥短语
Your identification has been saved in /root/.ssh/id_ecdsa.
Your public key has been saved in /root/.ssh/id_ecdsa.pub.
The key fingerprint is:
0d:08:fa:f5:ad:f6:c0:f4:dd:ec:af:5e:02:d1:d4:61 root@jingyu
The key's randomart image is:
+--[ECDSA  256]---+
|    .         .E.|
|   . . .     o. .|
|  .   o .   . .  |
|   . . . +   .   |
|    .   S o .    |
|       o o . +   |
|        = . . + .|
|       . o   . o |
|          .  .+o.|
+-----------------+

一般直接按enter键即可。(生产环境中不建议这样做。

ls -lh /root/.ssh/id_ecdsa*

查看确认生成的密钥文件

新生成的密钥对文件中, id_ecdsa 是私钥文件,权限默认为600,对于私钥文件必须妥善保管,

不能泄露给他人; id_ecdsa.pub 是公钥文件,用来提供给 SSH 服务器。

使用“ssh-copy-id -i 公钥文件 user@host”格式,“-i”选项指定公钥文件, “user”是指目标主机的用户。验证密码后, 会将公钥自动添加到目标主机user 宿主目录下的.ssh/authorized_keys 文件结尾。

ssh-copy-id #客户端地址

SSH客户端程序(ssh、scp、sftp)

1、ssh

修改端口之后则在登录时必须通过 "-p" 选项指定端口号(例如:ssh -p 1626 6.6.6.6) 

当用户第一次登录 SSH 服务器时,必须接受服务器发来的ECDSA 密钥(根据提示输入“yes”)  后才能继续验证。接收的密钥信息将保存到~/.ssh/known_hosts 文件中。

2、scp远程复制

通过 scp 命令可以利用 SSH 安全连接与远程主机相互复制文件。使用 scp 命令时,除了必须指 定复制源、目标之外,还应指定目标主机地址、登录用户,执行后根据提示输入验证口令即可。

例子:(在本地操作)

scp -rp /media 6.6.6.6:/

将本地主机的media目录拷贝到6.6.6.6主机的根目录下

(远程主机)

scp  -rp 6.6.6.3:/media /

(免密之后不需要输入密码)

3、sftp

通 过 sftp 命令可以利用 SSH 安全连接与远程主机上传、下载文件,采用了与 FTP 类似的登录 过程和交互式环境,便于目录资源管理。

例如:

sftp root@6.6.6.6

sftp>ls

上传

sftp> put 文件名称 #上传文件

sftp>put -r 目录 #上传目录

sftp>mput 名称 远程目录 #上传多个本地文件,支持通配符

sftp>mput -r 名称 远程目录 #上传多个本地目录,支持通配符

下载

sftp>get 文件名称 本地目录位置 #下载文件

sftp>get -r 文件名称 本地目录位置 #下载目录

sftp>mget 文件名称 本地目录位置 #下载多个文件,支持通配符

sftp>mget -r 文件名称 本地目录位置 #下载多个目录,支持通配符

  • 21
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
HCL SSH远程管理是指使用SSH协议对HCL设备进行远程管理和配置的过程。SSH是一种安全协议,可以在远程管理过程中提供数据的加密和身份验证。以下是配置HCL设备进行SSH远程管理的步骤: 1. 首先,需要在HCL设备上开启SSH服务。可以通过在设备的命令行界面中输入命令"ssh server enable"来开启SSH服务。 2. 接下来,配置设备的认证模式为组合模式,即用户名和密码认证。可以通过进入线程模式,并输入命令"authentication-mode scheme"来设置认证模式。 3. 然后,需要配置SSH协议的入站规则,以允许通过SSH协议进行远程管理。可以通过进入线程模式,并输入命令"protocol inbound ssh"来配置SSH协议。 4. 接下来,创建本地用户并设置其密码。可以通过进入线程模式,并输入命令"local-user [用户名]"来创建本地用户,然后使用命令"password simple [密码]"来设置密码。 5. 设置本地用户的服务类型为SSH,以允许该用户通过SSH协议进行远程管理。可以通过进入线程模式,并输入命令"service-type ssh"来设置服务类型。 6. 最后,为本地用户配置角色权限,以确定该用户的访问权限。可以通过进入线程模式,并输入命令"authorization-attribute user-role [角色名称]"来配置角色权限。 通过以上配置步骤,您就可以使用SSH协议进行HCL设备的远程管理了。请确保您已经正确配置了本地用户的用户名、密码和权限,以便登录并管理设备。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jingyu飞鸟

醒来觉得甚是爱你。

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值