热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS6下ssh简介及openssh的应用

1.ssh及openssl简介:SSH:ssh是secureshell,是用来通过网络来提供安全的远程访问的工具,C/S结构,在ssh之前,最早的远程计算机连接工具是telnettelnet是使用明文通信的,所以安全性很差,除非紧急情况,否则不要使用telnet。ssh则比telnet安全许多,而openssl则是ssh的

1. ssh及openssl简介:

 

SSH:

ssh是secure shell,是用来通过网络来提供安全的远程访问的工具,C/S结构,在ssh之前,最早的远程计算机连接工具是telnet

telnet是使用明文通信的,所以安全性很差,除非紧急情况,否则不要使用telnet。

ssh则比telnet安全许多,而openssl则是ssh的一种开源实现,

 

OPENSSH

 

它可以作为 rlogin、 rsh rcp 以及 telnet 的直接替代品使用。 更进一步, 其他任何 TCP/IP 连接都可以通过 SSH 安全地进行隧道/转发。 OpenSSH 对所有的传输进行加密, 从而有效地阻止了窃听、 连接劫持, 以及其他网络级的攻击。OpenSSH 由 OpenBSD project 维护。

登录过程和使用 rlogin 或 telnet 建立的会话非常类似。 在连接时, SSH 会利用一个密钥指纹系统来验证服务器的真实性。 只有在第一次连接时, 用户会被要求输入 yes。 之后的连接将会验证预先保存下来的密钥指纹。 如果保存的指纹与登录时接收到的不符, 则将会给出警告。 指纹保存在 ~/.ssh/known_hosts 中, 对于 SSH v2 指纹, 则是 ~/.ssh/known_hosts2。

 

默认情况下, 较新版本的 OpenSSH 只接受 SSH v2 连接。 如果能用版本 2 则客户程序会自动使用, 否则它会返回使用版本 1 的模式。 此外, 也可以通过命令行参数 -1 或 -2 来相应地强制使用版本 1 或 2。 保持客户端的版本 1 能力是为了考虑较早版本的兼容性。

 

 

SSH有两个版本:

1. sshv1  

sshv1 基于CRC-32做MAC(完整性校验),无加密,只是校验码,强烈建议不使用。非常不安全

 

2. sshv2

 

sshv2 基于双方主机的协商选择使用最安全的MAC方式

加密机制及MAC机制由双方协商选定:

基于DH算法,实现密钥交换,基于RSA或DSA实现身份认证

客户端通过检查服务器端的主机密钥来判断是否能够继续通信

 

 

实际使用中,可以通过命令行参数Protocol 2,1 来相应地强制使用版本 1 或 2。 

保持客户端的版本 1 能力是为了考虑较早版本的兼容性。

也可以只写2,而放弃兼容不安全的sshv1

 

 

2. OPENSSH客户端:

 

openssh是C/S架构,所以就有服务端和客户端两部分组成,linux下常用的客户端软件ssh, windows下常用的有putty,xshell,secrecrt,sshshellclient等

 

2.1 openssh的客户端组件:

 

2.1.1 ssh 配置文件是/etc/ssh/ssh_config

 

语法:

ssh [username]@host [COMMAND]  [-p PORT]
ssh -l username host [COMMAND]

 

#若没指定username,则使用本地当前用户尝试登陆,如果远程主机不存在此用户,会报错

#COMMAND,就是不远程登陆,只是在远程主机上执行COMMAND,然后将结果返回给本机。

 

例如:

需要获取192.168.229.202主机的ifconfig信息,ssh端口监听在2222端口上:

 
#ssh root@192.168.229.202 ifconfig -p 7767

 

 

2.1.2 scp: 利用ssh协议在主机之间实现安全文件传输的工具

 

语法:

scp SRC1...DEST

 

分两种情况:

1. 原文件在本机,目标为远程

 
#scp /path/to/somefile ...USERNAME@HOST:/path/to/somewhere

是将本地/path/to/somefile文件,以USERNAME用户登陆到远程主机HOST上,复制到远程主机的/path/to/somewhere

 

例如: 

将本地/etc/fstab文件复制到www.881027.com主机上/tmp下, 注意www.881027.com主机的ssh端口是2222

#scp -P 2222 /etc/fstab root@www.881027.com:/tmp
#注意, 参数-P的位置一定要紧跟在scp命令后面,而且-P指定的是远程主机的ssh端口
#注意, 如果当前本机登陆的用户是root,则root@www.881027.com中的root@可以省略

 

2. 源文件在远程,本地为目标

#scp USERNAME@HOST:/path/to/somewhere /path/to/somewhere
-r: 复制目录时使用
-p: 保持源文件的元数据信息,包括属主,属组,mode,timestamp (如果远程主机不存在这个用户,也不行)
-q: 静默模式
-P PORT: 指定ssh协议监听的端口
例如:
将远程主机/tmp/fstab文件下载到本机/etc
#scp -P 2222 root@www.881027.com /etc

2.1.3 sftp: 基于ssh的ftp服务

sftp登陆进去,可以使用很多bash的命令,例如ls,cd, mkdir, put, get等ftp命令

 

用法: sftp USERNAME@HOST

 

例如:

sftp登陆到www.881027.com,ssh端口2222,并下载www.881027.com主机上/etc/fstab文件到本地

#sftp -oPort=2222 sbi.881027.com
#-oPort 来指定远程的端口,不指定默认22

var cpro_id = "u6885494";

推荐阅读
  • Linux一键安装web环境全攻略
    摘自阿里云服务器官网,此处一键安装包下载:点此下载安装须知1、此安装包可在阿里云所有Linux系统上部署安装,此安装包包含的软件及版本为& ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • Django + Ansible 主机管理(有源码)
    本文给大家介绍如何利用DjangoAnsible进行Web项目管理。Django介绍一个可以使Web开发工作愉快并且高效的Web开发框架,能够以最小的代价构建和维护高 ... [详细]
  • 现在比较流行使用静态网站生成器来搭建网站,博客产品着陆页微信转发页面等。但每次都需要对服务器进行配置,也是一个重复但繁琐的工作。使用DockerWeb,只需5分钟就能搭建一个基于D ... [详细]
  • DockerDataCenter系列(四)-离线安装UCP和DTR,Go语言社区,Golang程序员人脉社 ... [详细]
author-avatar
费小小微博_372
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有