SSH远程管理、参数讲解、xshell使用、scp,sftp,ssh命令(ssh两种方式的密钥验证方

1.SSH远程管理

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

配置OpenSSH服务端(由openssh、openssh-server软件包提供、主配置文件/etc/ssh/sshd_config,服务“service sshd start”)

服务器监听选项:sshd服务器使用的默认端口号为22,必要的时候可以更改此端口(使用“ssh -p 端口号 [email protected]地址”);并指定监听服务的具体IP地址,以便在网络中提高隐蔽性;除此之外,SSH协议的版本选用V2比V1的安全性更;禁用DNS反向解析,可以提高服务器的响应速度。

更改完成后使用“service sshd reload”加载服务

用户登录控制:sshd服务默认允许root用户登录,当在internet中使用时比较不安全,一般会把root用户禁用,然后使用su命令进行用户切换;关于sshd服务的用户登录控制,通常禁用root。另外,可以限制登录验证的时间(默认2分钟)及最大重试次数,超过限制则断开连接。

更改完成后使用“service sshd reload”加载服务

当只希望允许或禁止某些用户登录时,可以使用AllowUsers或DenyUsers配置,两者用法类似(注意不要同时使用)。例如:若只希望jerry和admin用户登录,且其中admin用户仅能够从61.23.24.25的主机远程登录,可以参考一下操作。

更改完成后使用“service sshd reload”加载服务

登录验证方式:对于服务器的远程管理,除了用户账号的安全控制以外,登录验证的方式也非常重要。sshd两种验证方式__密码验证、密钥对验证。可以同时使用两种或一种方式。

密钥对验证:要求提供相匹配的密钥信息才能通过验证。通常先在客户集中创建一对密钥文件(公钥/私钥),然后将其复制到指定的服务器上,远程登录时,将进行公钥/私钥关联验证,大大增强了安全的需求。

密码验证:以服务器本地的用户进行验证。危害:从客户端来看,服务端有可能是假冒的;从服务端来看,有可能被暴力破解密码。

2.使用SSH客户端程序

OpenSSH客户端有openssh-client软件包提供(默认已安装),其中包括ssh远程登录命令,以及scp、sftp远程复制和文件传输命令。

在Windows平台中,可以使用Xshell、Xmanager、SecureCRT、Putty等工具。

SSH远程登录:通过SSH命令可以远程管理sshd服务,为用户提供一个安全的Shell环境,以便对服务器进行管理和维护。使用时应制定登录用户,目标主机地址作为参数。例如,若要登录主机192.168.1.1,以对方的wgl用户进行验证,可以执行以下操作:

当用户第一次登录SSH服务器时,必须接受服务器发来的RSA密钥(根据提示输入“yes”)后才能继续验证,接着输入wgl用户密码即可验证成功,其接受的密钥存放在~/.ssh/known_hosts文件中。

若端口不是默认的22,则使用“ssh -p 222 [email protected]”方式进行登录。

SCP远程复制:通过scp命令可以远程安全连接与远程主机相互复制文件,使用scp命令时,除了必须制定复制源、目标外,还应制定目标主机、登录用户、执行后输入口令即可。例如:一下分别验证上行和下行复制的操作过程:

sftp安全FTP:通过使用sftp命令可以利用SSH安全连接与远程主机上传、下载文件。采用了与ftp类似的登录过程及交互环境,便于目录资源管理。例如:以下操作依次演示了sftp登录、浏览、文件上传等过程。

在Windows中图形化登录:支持Telnet、SSH、SFTP等协议。

以Xshell为例,安装过程省略,默认下一步即可。

连接过程如下

连接成功后如图所示:

构建密钥对验证的SSH体系:

1)在客户端创建密钥对:在Linux客户机中,通过ssh-keygen工具为当前用户创建密钥对文件,可用的密钥对算法为RSA和DSA(ssh-keygen -t 选项用户指定算法类型)。例如:以zhangsan用户登录客户机,并生成基于RSA的SSH密钥对(公钥、私钥)文件,操作如下:

上述操作过程中,提示指定私钥文件的存放位置时,一般直接按enter键即可,最后生成的私钥、公钥文件默认存放在宿主目录中的隐藏文件夹.ssh下。私钥短语用来对私钥文件进行保护,当使用该私钥验证登录时必须正确提供此处所设置的短语,不设置此短语也可以(实现无口令登录)

2)讲公钥文件上传到服务器:

3)在服务器中导入公钥文本:

在服务器中,目标用户(指用来远程登录等账号wgl)公钥数据文件库位于~/.ssh目录,默认文件名为authorized_keys。

4)在客户端使用密钥对验证:

第二步和第三步可以采用另外一种方法,使用“ssh-copy-id -i 公钥文件 [email protected]”格式,-i选项指定公钥文件。

时间: 2024-10-18 04:49:18

SSH远程管理、参数讲解、xshell使用、scp,sftp,ssh命令(ssh两种方式的密钥验证方的相关文章

SSH远程管理

一.SSH介绍 SSH(Secure Shell) 是一种安全的通道协议,主要用来实现字符界面的远程登录.远程复制等功能. 软件:openssh.openssh-server等(默认已安装) 服务名称:sshd 端口:默认端口是22 服务端主程序:/usr/sbin/sshd 服务端配置文件:/etc/ssh/sshd_config 1.服务监听选项 [[email protected] ~]# vi /etc/ssh/sshd_config -- Port 22                

SSH远程管理服务实战

目录 SSH远程管理服务实战 1.SSH基本概述 2.SSH相关命令 3.Xshell连接不上虚拟机 4.scp命令 5.sftp命令 6.SSH验证方式 7.SSH场景实践 8.SH安全优化 9.交互expect[扩展] 10.免交互sshpass[扩展] SSH远程管理服务实战 1.SSH基本概述 SSH是一个安全协议,在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输.确保了数据传输安全.那SSH服务主要功能有哪些呢? 1.提供远程连接服务器的服务2.对传输的数据进行加密 那么

Linux服务器ssh远程管理

SSH远程管理 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登陆,远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登陆时输入的用户口令,与早期的telnet(远程管理),rsh(Remote Shell ,远程执行命令),rcp(远程复制文件)等应用相比,SSH协议提供了更好的安全性. 配置OpenSSH服务端 在RHEL 5系统中,OpenSSH服务器由openssh,openssh-server等软件包提供(默认已安装),并已将s

SSH远程管理服务

作者:Georgekai 归档:学习笔记 2018/1/29 SSH远程管理服务 1.1 SSH服务介绍说明 Secure shell protocol--安全的shell协议 SSH:先对要传输的数据包进行加密处理,然后在进行数据传输,确保了数据的安全 telnet:用于远程连接控制,但不对数据传输进行加密 1.1.1 SSH服务主要提供的两个功能: 1. 远程连接 2. 远程文件传输:如sftp 1.1.2 SSH连接排错思路 1. ping 172.16.1.41 traceroute 1

Linux(11):期中架构(3)--- SSH远程管理服务 & ansible 批量管理服务

SSH远程管理服务 1. 远程管理服务知识介绍 # 1.1 SSH远程登录服务介绍说明 SSH是Secure Shell Protocol的简写,由 IETF 网络工作小组(Network Working Group)制定: 在进行数据传输之前,SSH先对联机数据包通过加密技术进行加密处理,加密后在进行数据传输.确保了传递的数据安全. SSH是专为远程登录会话和其他网络服务提供的安全性协议. 利用SSH协议可以有效的防止远程管理过程中的信息泄露问题,在当前的生产环境运维工作中, 绝大多数企业普遍

Linux SSH远程管理故障如何排查?

Linux SSH远程管理故障如何排查? SSH远程管理故障排查方案: 1.检测两个机器是否畅通 两个机器之间是否畅通,查看物理链路是否有问题(网线网卡.IP是否正确) 第1步:物理链路是否畅通,比喻为"高速公路是否畅通" ping 排查客户端到服务端的线路问题,ping是常用的网络连通性检查工具 tracert -d 路由追踪命令,-d是不进行反向解析 C:\Users\Administrator>ping 10.0.0.8 正在Ping 10.0.0.8 具有32 字节的数据

Linux 远程桌面的两种方式

在绝多数情况下,Linux 不需要使用到GUI的桌面环境,但是有时在一些特殊的场景如安装Oracle的时候,需要有图形界面进行辅助才可以安装. 如果要使用Linux的图形界面,一般有两种方式: 1.Linux系统安装X Windows图形界面,使用vnc远程. 2.Linux系统启用X协议,配置X Clent,本地有桌面环境的机器(如Windows)配置X Server,获取远程的信息,在本地X server上显示图形界面. 方法一: 本机安装图形界面 这里以CentOS6.5的机器为例,安装图

网络协议 finally{ return问题 注入问题 jdbc注册驱动问题 PreparedStatement 连接池目的 1.2.1DBCP连接池 C3P0连接池 MYSQL两种方式进行实物管理 JDBC事务 DBUtils事务 ThreadLocal 事务特性 并发访问 隔离级别

1.1.1 API详解:注册驱动 DriverManager.registerDriver(new com.mysql.jdbc.Driver());不建议使用 原因有2个: >导致驱动被注册2次. >强烈依赖数据库的驱动jar 解决办法: Class.forName("com.mysql.jdbc.Driver"); 1.1.2 API详解:java.sql.Statement接口: 操作sql语句,并返回相应结果 String sql = "某SQL语句&qu

action中请求参数获取的两种方式

action中请求参数获取的两种方式 1.属性驱动? a.直接在 action 类中提供与请求参数匹配属性,提供 get/set 方法? b.在 action 类中创始一个 javaBean,对其提供 get/set ,在请求时页面上要进行修改,? 例如 user.username user.password ,要使用 ognl 表达式? 以上两种方式的优缺点:? 第一种比较简单,在实际操作我们需要将 action 的属性在赋值给模型(javaBean)去操作? 第二种:不需要在直接将值给 ja