位置: IT常识 - 正文

Linux系统中SSH命令的使用教程(linux ssh命令用法)

编辑:rootadmin
这篇文章主要介绍了Linux系统中SSH命令的使用教程,使用SSH软件及SSH命令远程连接服务器已经成为最普遍的运维连接方法之一,需要的朋友可以参考下... 16-01-19

推荐整理分享Linux系统中SSH命令的使用教程(linux ssh命令用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux ssh gui,linux里面ssh命令,linux ssh gui,linux中ssh命令详解,linux中ssh的用法,linux ssh,linux常用命令ssh,linux中ssh命令详解,内容如对您有帮助,希望把文章链接给更多的朋友!

ssh用于登录远程主机, 并且在远程主机上执行命令,它的目的是替换rlogin和rsh,同时在不安全的网络之上,两个互不信任的主机之间, 提供加密的, 安全的通信连接.先来看一下ssh命令的一些参数:

参数

-a 禁止转发认证代理的连接.

-A 允许转发认证代理的连接. 可以在配置文件中对每个主机单独设定这个参数. 代理转发须谨慎. 某些用户能够在远程主机上绕过文件访问权限 (由于代理的 UNIX 域 socket), 他们可以通过转发的连接访问本地代理. 攻击者不可能从代理获得密钥内容, 但是他们能够操作这些密钥, 利用加载到代理上 的身份信息通过认证.

-b bind_address 在拥有多个接口或地址别名的机器上, 指定收发接口.

-c blowfish|3des|des 选择加密会话的密码术. 3des 是默认算法. 3des (triple-des) 用三支不同的密钥做加密-解密-加密三次运算, 被认为比较可靠. blowfish 是一种快速的分组加密术(block cipher), 非常安全, 而且速度比 3des 快的多. des 仅支持 客户端, 目的是能够和老式的不支持 3des 的协议第一版互操作. 由于其密码算法上的弱点, 强烈建议避免使用.

-c cipher_spec 另外, 对于协议第二版, 这里可以指定一组用逗号隔开, 按优先顺序排列的密码术. 详见 Ciphers

-e ch|^ch|none 设置 pty 会话的 escape 字符 (默认字符: `~' ) . escape 字符只在行首有效, escape 字符后面跟一个点 (`.' ) 表示结束连接, 跟一个 control-Z 表示挂起连接(suspend), 跟 escape 字符自己 表示输出这个字符. 把这个字符设为 ``none 则禁止 escape 功能, 使会话完全透明.

-f 要求 在执行命令前退至后台. 它用于当 准备询问口令或密语, 但是用户希望它在后台进行. 该选项隐含了 -n 选项. 在远端机器上启动 X11 程序的推荐手法就是类似于 ssh -f host xterm 的命令.

-g 允许远端主机连接本地转发的端口.

-i identity_file 指定一个 RSA 或 DSA 认证所需的身份(私钥)文件. 默认文件是协议第一版的 $HOME/.ssh/identity 以及协议第二版的 $HOME/.ssh/id_rsa 和 $HOME/.ssh/id_dsa 文件. 也可以在配置文件中对每个主机单独指定身份文件. 可以同时使用多个 -i 选项 (也可以在配置文件中指定多个身份文件).

-I smartcard_device 指定智能卡(smartcard)设备. 参数是设备文件, 能够用它和智能卡通信, 智能卡里面存储了用户的 RSA 私钥.

-k 禁止转发 Kerberos 门票和 AFS 令牌. 可以在配置文件中对每个主机单独设定这个参数.

-l login_name 指定登录远程主机的用户. 可以在配置文件中对每个主机单独设定这个参数.

-m mac_spec 另外, 对于协议第二版, 这里可以指定一组用逗号隔开, 按优先顺序排列的 MAC(消息验证码)算法 (message authentication code). 详情以 MACs 为关键字查询.

-n 把 stdin 重定向到 /dev/null (实际上防止从 stdin 读取数据). 在后台运行时一定会用到这个选项. 它的常用技巧是远程运行 X11 程序. 例如, ssh -n shadows.cs.hut.fi emacs 将会在 shadows.cs.hut.fi 上启动 emacs, 同时自动在加密通道中转发 X11 连接. 在后台运行. (但是如果 要求口令或密语, 这种方式就无法工作; 参见 -f 选项.)

-N 不执行远程命令. 用于转发端口. (仅限协议第二版)

-o option 可以在这里给出某些选项, 格式和配置文件中的格式一样. 它用来设置那些没有命令行开关的选项.

-p port 指定远程主机的端口. 可以在配置文件中对每个主机单独设定这个参数.

-q 安静模式. 消除所有的警告和诊断信息.

-s 请求远程系统激活一个子系统. 子系统是 SSH2 协议的一个特性, 能够协助 其他应用程序(如 sftp)把SSH用做安全通路. 子系统通过远程命令指定.

-t 强制分配伪终端. 可以在远程机器上执行任何全屏幕(screen-based)程序, 所以非常有用, 例如菜单服务. 并联的 -t 选项强制分配终端, 即使 没有本地终端.

-T 禁止分配伪终端.

-v 冗详模式. 使 打印关于运行情况的调试信息. 在调试连接, 认证和配置问题时非常有用. 并联的 -v 选项能够增加冗详程度. 最多为三个.

-x 禁止 X11 转发.

-X 允许 X11 转发. 可以在配置文件中对每个主机单独设定这个参数. 应该谨慎使用 X11 转发. 如果用户在远程主机上能够绕过文件访问权限 (根据用户的X授权数据库), 他就可以通过转发的连接访问本地 X11 显示器. 攻击者可以据此采取行动, 如监视键盘输入等.

-C 要求进行数据压缩 (包括 stdin, stdout, stderr 以及转发 X11 和 TCP/IP 连接 的数据). 压缩算法和 gzip(1) 的一样, 协议第一版中, 压缩级别 ``level 用 CompressionLevel 选项控制. 压缩技术在 modem 线路或其他慢速连接上很有用, 但是在高速网络上反而 可能降低速度. 可以在配置文件中对每个主机单独设定这个参数. 另见 Compression 选项.

-F configfile 指定一个用户级配置文件. 如果在命令行上指定了配置文件, 系统级配置文件 (/etc/ssh/ssh_config ) 将被忽略. 默认的用户级配置文件是 $HOME/.ssh/config

-L port:host:hostport 将本地机(客户机)的某个端口转发到远端指定机器的指定端口. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 同时远程主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有 root 才能转发特权端口. IPv6 地址用另一种格式说明: port/host/hostport

-R port:host:hostport 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口. 工作原理是这样的, 远程主机上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转向出去, 同时本地主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有用 root 登录远程主机 才能转发特权端口. IPv6 地址用另一种格式说明: port/host/hostport

-D port 指定一个本地机器 ``动态的 应用程序端口转发. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 根据应用程序的协议可以判断出远程主机将和哪里连接. 目前支持 SOCKS4 协议, 将充当 SOCKS4 服务器. 只有 root 才能转发特权端口. 可以在配置文件中指定动态端口的转发.

-1 强制 只使用协议第一版.

-2 强制 只使用协议第二版.

-4 强制 只使用 IPv4 地址.

Linux系统中SSH命令的使用教程(linux ssh命令用法)

-6 强制 只使用 IPv6 地址.

基本用法

最简单的 SSH 命令只需要指定用户名和主机名参数即可. 主机名可以是 IP 地址或者域名. 命令格式如下:

代码如下:$ ssh user@hostname

比如要在我的局域网内登录一个树莓派系统, 只需要简单的在命令行输入如下命令:

代码如下:$ ssh pi@10.42.0.47

命令中的 pi 和 10.42.0.47 分别是我的树莓派系统的用户名和局域网 IP 地址. 实际使用时主机名需要改成你的目标主机(局域网内或者远程)的 IP 地址.

如果你能够成功登陆, 那么下面的内容对你来说就轻而易举了.

使用其他端口

SSH 默认连接到目标主机的 22 端口上,但是由于各种原因你可能需要连接到其他端口.

代码如下:$ ssh -p 10022 user@hostname

如上命令就是通过添加参数 -p 指定端口号为 10022.

远程执行命令

有时在远程主机执行一条命令并显示到本地, 然后继续本地工作是很方便的. SSH 就能满足这个需求:

代码如下:$ ssh pi@10.42.0.47 ls -l

比如上面这个命令就会枚举远程主机的主目录内容并在本地显示. 是不是很酷? 你可以尝试下其他命令看看.

挂载远程文件系统

另外一个很赞的基于 SSH 的工具叫 sshfs. sshfs 可以让你在本地直接挂载远程主机的文件系统.

代码如下:$ sshfs -o idmap=user user@hostname:/home/user ~/Remote

比如下面这条命令:

代码如下:$ sshfs -o idmap=user pi@10.42.0.47:/home/pi ~/Pi

该命令就将远程主机 pi 用户的主目录挂载到本地主目录下的 Pi 文件夹.

要详细了解可以参考 sshfs 教程.

X11 图形界面

假如现在你想要在远程主机运行一个图形界面的程序, SSH 已经帮你想到了! 用前面提到的 SSH 基本命令加上参数 -X 连接到远程主机即可开启 X11 转发功能. 登录后你可能觉得没什么差别, 但是当你运行一个图形界面程序后就会发现其中的不同的.

代码如下:$ ssh -X pi@10.42.0.47$ pistore

如果你想在运行图形界面程序的同时做些别的事情, 只需要简单地在命令末尾加一个 & 符号.

代码如下:$ pistore&

转义字符

SSH 提供了多样的转义字符功能. 用 SSH 连接到任意一台远程主机然后输入 ~? 你就可以看到支持的转义字符和功能说明列表. 以下例子展示了 ~# 和 ~C 的效果.

配置 SSH

如果你需要改变 SSH 的配置, 请用你喜好的文本编辑器打开 /etc/ssh/sshd_config 进行编辑. 比如你想改变登陆的标语, 在配置文件中找到下面这行:

代码如下:#Banner none

删除 # 字符(取消该行的注释), 将 none 替换为包含你期望显示内容的文件地址. 修改后该行应该类似这样:

代码如下:Banner /etc/issue

在配置文件 /etc/ssh/sshd_config 中你还可以找到端口号, 空闲超时时间等配置项. 配置项大都比较容易理解, 但是保险起见在你修改一些不是很确定的配置项时最好参考下 SSH 的帮助文档.

构建 ssh 密钥对

运行以下命令创建密钥对:

代码如下:$ ssh-keygen -t dsa

此命令会要求你输入密码(可以留空), 然后就会生成密钥并会显示一张该密钥对应的随机图.

寻找主机密钥

在你准备添加密钥之前不妨先用以下命令看看是否已经添加了对应主机的密钥了.

代码如下:$ ssh-keygen -F 10.42.0.47

删除主机密钥

某些情况下, 比如主机地址更改或者不再使用某个密钥, 你就可能需要删除某个密钥.

代码如下:$ ssh-keygen -R 10.42.0.47

用以上命令就可删除. 这比手动在 ~/.ssh/known_hosts 文件中删除要方便很多.

总结

通过以上的内容你应该可以轻松使用 SSH 了. SSH 还有很多功能值得你去发掘, 这就要看你的想象力了。

本文链接地址:https://www.jiuchutong.com/zhishi/269754.html 转载请保留说明!

上一篇:win11怎么关闭进程? Windows11进程未在任务管理器强制关闭的方法(win11怎么关闭进程)

下一篇:macbook截图快捷键如何修改?(macbook截图快捷键没反应)

  • 掌握微博营销这8个点,快速成为高手(掌握微博营销这种方法)

    掌握微博营销这8个点,快速成为高手(掌握微博营销这种方法)

  • clock是什么键(clocks是什么)

    clock是什么键(clocks是什么)

  • 钉钉分屏老师知道吗(钉钉分屏老师看得见吗)

    钉钉分屏老师知道吗(钉钉分屏老师看得见吗)

  • wps横线怎么打出来再填字上去(wps横线怎么打出来)

    wps横线怎么打出来再填字上去(wps横线怎么打出来)

  • 不贴钢化膜对手机屏幕有影响吗(不贴钢化膜对手机触控有影响吗)

    不贴钢化膜对手机屏幕有影响吗(不贴钢化膜对手机触控有影响吗)

  • 华为nova7怎么调返回键(华为nova7怎么调刷新率)

    华为nova7怎么调返回键(华为nova7怎么调刷新率)

  • 微信用户行为规范无法加入群聊是什么意思(微信用户行为规范)

    微信用户行为规范无法加入群聊是什么意思(微信用户行为规范)

  • 苹果11如何挂断来电(苹果如何挂断不想接听的电话)

    苹果11如何挂断来电(苹果如何挂断不想接听的电话)

  • 淘宝评论可以删除吗(淘宝评论可以删除图片吗)

    淘宝评论可以删除吗(淘宝评论可以删除图片吗)

  • 苹果7显示蜂窝移动更新失败是怎么回事(苹果7显示蜂窝网络更新失败是怎么回事?)

    苹果7显示蜂窝移动更新失败是怎么回事(苹果7显示蜂窝网络更新失败是怎么回事?)

  • 为什么爱奇艺一直掉线(为什么爱奇艺一直震动)

    为什么爱奇艺一直掉线(为什么爱奇艺一直震动)

  • 电脑开机键一直闪开不了机(电脑开机键一直闪烁黄灯)

    电脑开机键一直闪开不了机(电脑开机键一直闪烁黄灯)

  • 三星smg9280是什么型号

    三星smg9280是什么型号

  • 企业微信虚拟打卡能查出来吗(企业微信虚拟打卡教程)

    企业微信虚拟打卡能查出来吗(企业微信虚拟打卡教程)

  • cad中平方米怎么打(cad中平方米怎么打出来)

    cad中平方米怎么打(cad中平方米怎么打出来)

  • 华为拍照时间水印怎么设置(华为拍照时间水印怎么设置p30)

    华为拍照时间水印怎么设置(华为拍照时间水印怎么设置p30)

  • excei表格中如何换行(excei表格如何换行)

    excei表格中如何换行(excei表格如何换行)

  • qq个性签名怎么恢复默认(qq个性签名怎么隐藏不让别人看到)

    qq个性签名怎么恢复默认(qq个性签名怎么隐藏不让别人看到)

  • 拼多多货号指什么(拼多多商品编号是什么意思)

    拼多多货号指什么(拼多多商品编号是什么意思)

  • 荣耀v20联名版区别(荣耀v20联名款与普通款)

    荣耀v20联名版区别(荣耀v20联名款与普通款)

  • 华为nova5pro截屏快捷键(华为nova5pro截屏模糊)

    华为nova5pro截屏快捷键(华为nova5pro截屏模糊)

  • gsync怎么设置(gsync显示器具体设置)

    gsync怎么设置(gsync显示器具体设置)

  • 手环测睡眠的原理 (手环测睡眠的原理和作用)

    手环测睡眠的原理 (手环测睡眠的原理和作用)

  • 个人所得税申诉已受理多久出结果
  • 企业所得税的会计处理
  • 老板的报销分录怎么写
  • 外购的商品用于生产
  • 为什么租赁只能20年
  • 所得税预缴申报表中营业成本怎么计算
  • 应付账款的核算会计分录
  • 长期负债平均余额怎么算
  • 金融服务利息
  • 企业将存货低价出售处理要如何做会计处理?
  • 银行汇票的概念
  • 个人抬头的通讯费可以做费用吗
  • 汽车销售行业的现状及发展趋势
  • 发票报账的基本流程
  • 房地产开发企业预收款预缴增值税
  • 收购全资子公司的账务处理
  • 管理费用避税
  • 什么是税收编码,在哪里查
  • 手撕发票怎么报销给单位,怎么打印抬头和日期
  • 小规模纳税人附加税会计分录
  • 企业增值税去哪交
  • 土地补偿款属于专项资金吗
  • 代理记账公司收费标准
  • 增值税发票系统报税盘怎么用
  • 不动产进项税为什么不能抵扣
  • bios密码忘记了怎么清除,放电不行
  • 创业补贴的作用
  • laravel多条件查询
  • 华为2022年资产负债表数据
  • 蜜蜂 (© Angela Parker/Offset)
  • 前端跨域的方法
  • php docblocker
  • php 无限级分类
  • php t_string
  • 递延收益会计科目的账务处理
  • json有几种基本结构
  • 全年一次性奖金单独计税还是并入
  • 季度所得税收入大于成本利润是负号
  • 印花税最新的征收方法
  • 软件公司股权
  • 税率减按1.5%计算是什么意思
  • 企业停工期间发生的费用如何处理
  • 报验户如何管理
  • Table ‘xxx’ is marked as crashed and should be repaired 错误解决方法参考
  • 股东的报销款可以抵投资款吗
  • 预收账款可以用吗
  • 注册资本认缴到期
  • 销售退货会计分录
  • 充值卡赠送金额属于什么性质
  • 网络销售平台有哪些平台
  • 在建工程物资属于存货吗
  • 企业尚未给予指定用途
  • 公司库存商品科目余额太大怎么办
  • 下列项目的进项税额可以从销项税额中抵扣的是()
  • 园林绿化公司的税率是多少
  • 小规模小微企业免税销售额
  • 银行账户维护费收费标准
  • 未分配利润可以转盈余公积吗
  • sqlsever导入数据时出现ole db连接数据无效
  • mysql 正则表达式 是否包含字母
  • ubuntuone
  • mac2020怎么换开机背景
  • w7系统怎么添加打印机
  • rsync 教程
  • xp系统的文件要用什么才能打开
  • win7系统如何调节屏幕亮度
  • 右键回收站一直转圈
  • win10系统锁屏广告怎么取消
  • pycharm如何使用
  • json对象如何取值
  • arp如何绑定
  • python 编程技巧
  • jquery有哪些
  • shell脚本clear
  • jquery实战
  • python文件处理方法
  • 银行流水怎么查
  • 累计计税金额是怎么得出
  • 社保怎么退款申请在手机上
  • 两税法的历史解释
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设