SSH基础操作

SSH(Secure Shell)是一种加密的网络协议,用于在不安全的网络中提供安全的远程登录和其他安全网络服务。SSH 提供了多种参数和选项,以满足不同的使用场景和需求。

一、安装ssh客户端命令

1、Ubuntu/Debian及其衍生版

sudo apt-get update

sudo apt-get install openssh-server #安装服务端命令

sudo apt-get install openssh-client #安装客户端命令

2、CentOS/RHEL及其衍生版

2.1 使用yum命令安装

sudo yum install openssh-clients #安装客户端命令

sudo yum install openssh-server #安装服务端命令

2.1 使用dnf命令安装

sudo dnf install openssh-clients #安装服务端命令

sudo dnf install openssh-server #安装服务端命令

二、基本连接参数

1、用户名和主机

格式:ssh [用户名]@[主机地址]

示例:ssh username@192.168.1.100

2、指定端口

参数:-p [端口号]

示例:ssh -p 22 username@hostname

3、使用特定的密钥文件

参数:-i [私钥文件路径]

示例:ssh -i ~/.ssh/id_rsa username@hostname

三、认证和加密相关参数

1、启用或禁用密码认证

参数:-o PasswordAuthentication=yes或no

示例:ssh -o PasswordAuthentication=no username@hostname

2、数据压缩

参数:-C

示例:ssh -C root@192.168.0.103

3、调试信息

参数:-v(轻度调试)、-vv(更详细)、-vvv(最详细)

示例:ssh -vv username@hostname

四、高级功能参数

1、执行远程命令

示例:ssh username@hostname 'ls -l'

2、端口转发

参数:-L [本地端口]:[远程地址]:[远程端口]

示例:ssh -L 8080:localhost:80 username@hostname

3、X11 转发 ( 允许 GUI 应用传输 )

参数:-X

示例:ssh -X username@hostname

4、静默模式 ( 不显示任何消息 )

参数:-q

示例:ssh -q username@hostname

5、配置文件指定

参数:-F [配置文件路径]

示例:ssh -F /path/to/config username@hostname

6、使用 SOCKS 代理

参数:-D [本地端口]

示例:ssh -D 8080 username@hostname

7、绑定源地址

参数:-b [源IP地址]

示例:ssh -b 192.168.0.200 root@192.168.0.103

五、其他参数

1、强制伪 tty 分配

参数:-t

示例:ssh -t 10.0.0.5(可以在多跳登录中使用)

2、选项参数

-o 可以后跟多种选项,如 StrictHostKeyChecking=no,用于关闭对主机密钥的严格检查。

六、SSH 配置文件

SSH 的配置文件通常位于/etc/ssh/ssh_config(客户端)和/etc/ssh/sshd_config(服务端)。这些配置文件包含了 SSH 的各种默认设置,可以通过编辑这些文件来自定义 SSH 的行为。

七、使用建议

  1. 在使用 SSH 进行远程连接时,建议使用密钥对认证方式,以提高安全性。
  2. 对于重要的服务器,应关闭密码认证,并限制允许连接的用户和IP地址。
  3. 定期检查 SSH 配置文件和日志文件,以确保系统的安全性。

总之,SSH 提供了丰富的参数和选项,以满足不同的使用需求。通过合理配置和使用这些参数,可以确保远程连接的安全性和稳定性。

相关推荐
minji...1 小时前
Linux 基础IO(一) (C语言文件接口、系统调用文件调用接口open,write,close、文件fd)
linux·运维·服务器·网络·数据结构·c++
码龄3年 审核中1 小时前
Linux record 04
linux·运维·服务器
RisunJan1 小时前
Linux命令-ftptop命令(实时监控 ProFTPD 服务器连接状态)
linux·运维·服务器
虾..1 小时前
Linux 文件描述符,重定向及缓冲区理解
linux·运维·服务器
元气满满-樱2 小时前
SSH远程服务管理
运维·ssh
db_cy_20622 小时前
Git对服务器配置文件进行版本控制
运维·服务器·git
TracyCoder1232 小时前
在Ubuntu上搭建大模型最基础的应用环境
linux·运维·ubuntu
云和数据.ChenGuang2 小时前
AI运维工程师技术教程之Linux环境下部署Deepseek
linux·运维·人工智能
JuiceFS2 小时前
JuiceFS + MinIO:Ariste AI 量化投资高性能存储实践
运维·后端
ejinxian3 小时前
WindFlow - 通过多个AI增强您的自动化工作流程
运维·自动化·ai工作流程