博客
关于我
25 个必须记住的SSH 命令
阅读量:193 次
发布时间:2019-02-28

本文共 1610 字,大约阅读时间需要 5 分钟。

OpenSSH:安全的远程连接工具

OpenSSH 是 SSH 协议的免费实现,广泛应用于安全的远程连接。与传统的 telnet、rlogin 和 ftp 不同,OpenSSH 采用加密通信方式,确保密码和数据传输的安全性,有效防止窃听和网络攻击。

OpenSSH 的核心优势

  • 加密通信:OpenSSH 将所有通信内容(包括密码)加密,保护数据隐私。
  • 多种身份验证方式:支持多种认证机制,满足不同环境的安全需求。
  • 跨平台兼容性:无论是 Linux、macOS 还是 Windows,OpenSSH 都提供稳定的远程连接解决方案。
  • 常用 SSH 命令汇总

  • 复制 SSH 密钥

    使用 ssh-copy-id 命令将本地 SSH 密钥复制到目标主机,支持无密码登录:

    ssh-copy-id user@host
  • 端口转发(隧道)

    将本地端口转发到远程服务器:

    ssh -N -L2001:localhost:80 somemachine

    现在可以通过本地浏览器访问目标服务器的网站。

  • 麦克风输入输出

    将麦克风输出传输至远程扬声器:

    dd if=/dev/dsp | ssh -c arcfour -C username@host dd of=/dev/dsp
  • 文件比较

    比较本地和远程文件差异:

    ssh user@host cat /path/to/remotefile | diff /path/to/localfile
  • 挂载远程文件系统

    安全挂载远程目录:

    sshfs name@server:/path/to/folder /path/to/mount/point

    下载 sshfs 工具以实现跨网络目录访问。

  • 通过中继服务器连接

    使用中间主机建立 SSH 隧道:

    ssh -t reachable_host ssh unreachable_host

    适用于从本地网络无法直接访问的远程主机。

  • 复制 SSH 公钥

    将 SSH 公钥复制到远程主机,支持无密码登录:

    ssh-copy-id username@hostname
  • 间接连接

    通过只能通过主机 B 连接的主机 A:

    ssh -t hostA ssh hostB
  • 持久化 SSH 连接

    后台创建持久化 SSH 套接字:

    ssh -MNf @

    配合 ~/.ssh/config 文件实现定期文件同步的需求。

  • SSH 会话屏幕

    分离远程屏幕会话:

    ssh -t remote_host screen –r
  • 端口检测(敲门)

    使用 knockd 工具检测特定端口状态:

    knock host 3000 4000 5000 && ssh -p user@host knock host 5000 4000 3000

    安装 knockd 后,根据配置文件开启端口检测。

  • 删除文本文件内容

    使用 sed 删除特定行:

    sed -i 8d ~/.ssh/known_hosts
  • 执行远程命令

    执行本地脚本或命令:

    ssh host -l user “`cat cmd.txt`”
  • MySQL 数据库迁移

    使用 SSH 隧道复制数据库:

    mysqldump –add-drop-table –extended-insert –force –log-error=error.log -uUSER -pPASS OLD_DB_NAME | ssh -C user@newhost “mysql -uUSER -pPASSNEW_DB_NAME”
  • 删除文本文件行

    修复 SSH 主机密钥警告:

    sed -i 8d ~/.ssh/known_hosts
  • 注意事项

    • 安全性:使用 SSH 的所有操作应遵循安全规范,避免暴露私密密钥。
    • 配置优化:合理配置 SSH 客户端和服务器,提升连接效率和安全性。

    OpenSSH 提供了强大的远程连接功能,适用于日常开发、系统管理和数据传输等多种场景。

    转载地址:http://ljai.baihongyu.com/

    你可能感兴趣的文章
    nvm切换node版本
    查看>>
    nvm安装以后,node -v npm 等命令提示不是内部或外部命令 node多版本控制管理 node多版本随意切换
    查看>>
    ny540 奇怪的排序 简单题
    查看>>
    NYOJ 1066 CO-PRIME(数论)
    查看>>
    nyoj------203三国志
    查看>>
    nyoj58 最少步数
    查看>>
    OAuth2 + Gateway统一认证一步步实现(公司项目能直接使用),密码模式&授权码模式
    查看>>
    OAuth2 Provider 项目常见问题解决方案
    查看>>
    Vue.js 学习总结(14)—— Vue3 为什么推荐使用 ref 而不是 reactive
    查看>>
    oauth2-shiro 添加 redis 实现版本
    查看>>
    OAuth2.0_JWT令牌-生成令牌和校验令牌_Spring Security OAuth2.0认证授权---springcloud工作笔记148
    查看>>
    OAuth2.0_JWT令牌介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记147
    查看>>
    OAuth2.0_介绍_Spring Security OAuth2.0认证授权---springcloud工作笔记137
    查看>>
    OAuth2.0_完善环境配置_把资源微服务客户端信息_授权码存入到数据库_Spring Security OAuth2.0认证授权---springcloud工作笔记149
    查看>>
    OAuth2.0_授权服务配置_Spring Security OAuth2.0认证授权---springcloud工作笔记140
    查看>>
    OAuth2.0_授权服务配置_令牌服务和令牌端点配置_Spring Security OAuth2.0认证授权---springcloud工作笔记143
    查看>>
    OAuth2.0_授权服务配置_客户端详情配置_Spring Security OAuth2.0认证授权---springcloud工作笔记142
    查看>>
    OAuth2.0_授权服务配置_密码模式及其他模式_Spring Security OAuth2.0认证授权---springcloud工作笔记145
    查看>>
    OAuth2.0_授权服务配置_资源服务测试_Spring Security OAuth2.0认证授权---springcloud工作笔记146
    查看>>
    OAuth2.0_环境介绍_授权服务和资源服务_Spring Security OAuth2.0认证授权---springcloud工作笔记138
    查看>>