SSH 至 Secure Shell 缩写。由 IETF 网络工作组(Network Working Group)开发;SSH 以建立应用层和传输层安全协议中的基础上。

SSH 是眼下较可靠,专为远程登录会话和其它网络服务提供安全性的协议。经常使用于远程登录,以及用户之间进行资料拷贝。

利用 SSH 协议能够有效防止远程管理过程中的信息泄露问题。SSH 最初是 UNIX 系统上的一个程序。后来又迅速扩展到其它操作平台。

SSH 在正确使用时可弥补网络中的漏洞。SSH client适用于多种平台。差点儿全部 UNIX 平台—包含 HP-UX、Linux、AIX、Solaris、Digital UNIX、Irix,以及其它平台,都可执行 SSH。

相关工具的安装

SSH server的安装:

sudo apt-get install openssh-server

SSH client的安装:

sudo apt-get install openssh-client

client和server的关系:假设,A 机器想被 B 机器远程控制。那么。A 机器须要安装 SSH server,B 机器须要安装 SSH client。

如使用过程中出现故障。可重新启动 SSH server:

sudo service ssh restart

測试使用

操作命令:ssh -l username hostip

ssh : 命令

-l
: 选项, 是字母“ L ”,不是数字“ 1 ”

username:被远程登录的用户名

hostip:被远程登录的 ip 地址

查看被远程登录的的ip:

远程登录(这里是用户 wencong ( A 机器 ) 远程登录 edu ( B 机器 ) )。 能够不用sudo :

SSH 告知用户。这个主机不能识别,这时键入" yes "。SSH 就会将相关信息。写入" ~/.ssh/know_hosts " 中。再次訪问,就不会有这些信息了。然后输入完口令,就能够登录到主机了。

接着。提示输入登录password:

登陆成功:

假设想在 Windows 平台下远程登录 Linux。这时候。Windows 须要安装 xmanager 软件包。

xmanager是个软件包。

包括xshell、xftp、xstart等软件。

xshell:是一个 Windows 平台下的 ssh、TELNET 和 RLOGIN 终端软件。

它使得用户能轻松和安全地在 Windows 平台上訪问 Unix/Linux 主机。

xftp:是一个应用于 Windows 平台的 FTP 和 SFTP 文件传输程序。xftp 能安全地在Unix/Linux 和 Windows 平台之间传输文件。

xstart:同意远程使用图形界面訪问server,可是效率稍低,仅支持 gnome 桌面。

这里,我们使用 xshell 软件,详细详情请看:《 Linux开发环境搭建与使用——通过xshell远程连接ubuntu》。

SSH 配置

SSH 安装的时候,没有默认的用户配置文件,我们能够依据自己须要自行配置。

如上面的样例。我们要登陆 10.221.20.16 上的 edu 用户。我们每次都得敲“ssh -l edu 10.221.20.16”。

以下介绍一下简化这个命令的方法。

在 ~/.ssh 下建立文件 config:

在 config 编写例如以下内容:

以后。在命令行执行“ ssh edu ” 就可以登陆 10.221.20.16 上的 edu 用户:

注意:config 第一行内容,假设改为
Host *test 。命令则变为:ssh test。test 这个名字依据须要自定命名,敲命名时匹配上即可。

当然,还有很多其它别的选项,如 ForwardAgent, Compression, ForwardX11 FallBackToRsh等。这里就不一一罗列。

用“ scp ”复制文件和文件夹

SSH 提供了一些命令和 shell 用来登录远程server。

在默认情况下,不同意用户复制文件,但还是提供了一个“ scp ”命令,用法例如以下:

本地文件拷贝到远程:

scp FileName RemoteUserName@RemoteHostIp:RemoteFile

scp FileName RemoteHostIp:RemoteFolder

scp FileName RemoteHostIp:RemoteFile



本地文件夹拷贝到远程:

scp -r FolderName RemoteUserName@RemoteHostIp:RemoteFolder

scp -r FolderName RemoteHostIp:RemoteFolder



远程文件拷贝到本地:

scp RemoteUserName@RemoteHostIp:RemoteFile FileName

scp RemoteHostIp:RemoteFolder FileName

scp RemoteHostIp:RemoteFile FileName



远程文件夹拷贝到本地:

scp -r RemoteUserName@RemoteHostIp:RemoteFolder FolderName

scp -r RemoteHostIp:RemoteFolder FolderName

这里仅仅測试一个命令,其他操作都是大同小异。

远程文件拷贝到本地:

scp RemoteUserName@RemoteHostIp:RemoteFile FileName

RemoteUserName:远程username

RemoteHostIp:远程ip

RemoteFile:远程文件。可带上路径

FileName:复制到本地后的名字,可带上路径。不带路径复制到当前文件夹

查看远程文件夹与文件:

查看本地文件夹与文件:

拷贝远程的文件:

拷贝远程的文件能够随意改动其名字:

拷贝远程的文件能够指定存放路径:

版权声明:该博客文章,我写的主要是整理,或收集在一个网络,转载请注明出处!!

Linux开发环境的搭建和使用——Linux本必备软件SSH的更多相关文章

  1. Linux开发环境的搭建和使用——Linux 常用的命令使用

    概要 视或电影中看到过类似的场景,黑客面对一个黑色的屏幕,上面飘着密密麻麻的字符,梆梆一顿敲,就完毕了窃取资料的任务. Linux 刚出世时没有什么图形界面.全部的操作全靠命令完毕.就如同电视里的黑客 ...

  2. 嵌入式Linux开发环境的搭建

    一个.制造u-boot.bin文件:    tar xjf u-boot-1.1.6.tar.bz2    cd u-boot-1.1.6    patch -p1 < ../u-boot-1. ...

  3. 用Windows+VirtualBox搭建嵌入式Linux开发环境

    Windows+VirtualBox的嵌入式Linux开发环境的搭建 最近一直在学习Linux的设备驱动编写,一直是在物理机上安装的Ubuntu进行的,但是在Ubuntu12.04的系统中,已经不能用 ...

  4. Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2]

    Setting up a EDK II build environment on Windows and Linux:搭建Windows和Linux开发环境[2.2] 2015-07   北京海淀区  ...

  5. 使用window10系统搭建完善的Linux开发环境

    https://juejin.im/post/5d22e46ee51d45775746b9b1 导读 在使用window系统开发时由于系统环境和线上环境不一致可能导致各种问题,以及部分扩展库只支持li ...

  6. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

  7. Linux环境下Android开发环境的搭建

    本文主要介绍在Ubuntu下Android开发环境的搭建,所使用的IDE为Eclipse(Android Studio同理,且可省去配置SDK以及安装adt插件的步骤). 1.安装JDK (1)JDK ...

  8. Virtualbox+UbuntuServer+Xshell搭建Linux开发环境

    需求背景 嵌入式开发环境以编译服务器(Linux系统)为核心, 开发人员较多使用Windows系统, 通过若干工具, 可以实现开发人员使用Windows的开发工具,编写代码,然后在Linux系统上编译 ...

  9. 嵌入式Linux开发——内容介绍与开发环境的搭建

    嵌入式Linux开发步骤 设计自己的硬件系统 编写Bootloader 裁剪自己的Linux内核 开发移植设备驱动 构建根文件系统 开发应用程序 嵌入式Linux学习要点 熟练使用开发工具和相关指令集 ...

随机推荐

  1. Java NIO 系列教程(转)

    原文中说了最重要的3个概念,Channel 通道Buffer 缓冲区Selector 选择器其中Channel对应以前的流,Buffer不是什么新东西,Selector是因为nio可以使用异步的非堵塞 ...

  2. 8.Eclipse中创建Maven Web项目

     第一步: 创建maven webproject 注意以下一步: 第二步: 继承parent 改动pom.xml文件例如以下 <projectxmlns="http://maven ...

  3. 学习pthreads,创建和终止多线程

    更CPU多线程编程,通过笔者的研究发现,,pthreads使用日趋广泛.它是螺纹POSIX标准,它定义了一组线程的创建和操作API. 配置环境见上博客文章.配置环境后,只需要加入#include &l ...

  4. Appium之java API

    AppiumDriver getAppStrings() 默认系统语言相应的Strings.xml文件内的数据. driver.getAppStrings(String language) 查找某一个 ...

  5. Android属于查询执行情况的电话号码

    这部分是昨天学习,但是因为眼所以现在到眼睛超负荷,以后要合理规划时间. 现在里面的手机号码归属地查询主要通过两种途径:1.网络查询.2.匹配本地归属地数据库. 我认为最好的两个方法的结合,在进行联网查 ...

  6. 定向爬虫之爬一爬各个学校新闻的认识(【1】对Url的认识)

    昨天早上,我习惯性的打开博客园,看一看别人的写的博客.突然想起,自己好像没有写过什么博客,所以就心血来潮,把我现在做得事情写出来, 这也是对我目前的学习的一种总结.望大神指点.... 对于一间学校的新 ...

  7. 超过lua上帝的语言

    上帝的语言(god)它是基于lua和RPP新一代编程语言 为什么需要它? 1.好多人不喜欢lua语法,god的语法更像C 2.god支持元编程.闭包.协程 3.凡是lua支持的特性god也支持,lua ...

  8. 5.非关系数据库(Nosql)它mongodb:创建一个集合,导出和导入备份, 数据恢复,进出口

     1 固定集合 固定集合值得是事先创建并且大小固定的集合 2 固定集合的特征:固定集合非常像环形队列.假设空间不足,最早文档就会被删除,为新的文档腾出空间.一般来说.固定集合适用于不论什么想要自己 ...

  9. 设计模式(Facade)状态(注意事项)

    外观模式(Facade),子系统的一组接口提供一个一致的界面,该模式定义了一个高层次接口,这个接口使得这一子系统更加easy采用. 外观模式完美地体现了依赖反转原则,迪米特法则的想法,式之中的一个. ...

  10. MVC中下拉框显示枚举项

    原文:MVC中下拉框显示枚举项 本篇将通过3种方式,把枚举项上的自定义属性填充到下拉框: 1.通过控制器返回List<SelectListItem>类型给前台视图 2.通过为枚举类型属性打 ...