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 提供了丰富的参数和选项,以满足不同的使用需求。通过合理配置和使用这些参数,可以确保远程连接的安全性和稳定性。

相关推荐
MarkGosling1 小时前
【开源项目】网络诊断告别命令行!NetSonar:开源多协议网络诊断利器
运维·后端·自动化运维
无敌的牛1 小时前
Linux基础开发工具
linux·运维·服务器
Edingbrugh.南空1 小时前
实战指南:用pmap+gdb排查Linux进程内存问题
linux·运维·服务器
朱颜辞镜花辞树‎1 小时前
GitHub 操作指南:项目协作与自动化工作流实践
运维·自动化·github
孙克旭_2 小时前
day051-ansible循环、判断与jinja2模板
linux·运维·服务器·网络·ansible
总有刁民想爱朕ha3 小时前
零基础搭建监控系统:Grafana+InfluxDB 保姆级教程,5分钟可视化服务器性能!
运维·服务器·grafana
Mr_Orangechen3 小时前
Linux 下使用 VS Code 远程 GDB 调试 ARM 程序
linux·运维·arm开发
撰卢3 小时前
【个人笔记】负载均衡
运维·笔记·负载均衡
lilian1294 小时前
linux系统mysql性能优化
linux·运维·mysql
乌云暮年5 小时前
Linux常用命令
linux·服务器·ssh·php