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

相关推荐
RPA机器人就用八爪鱼7 小时前
RPA自动化程序:企业数字化转型的智能引擎
运维·自动化·rpa
demodashi6668 小时前
Linux下ag搜索命令详解
linux·运维·windows
無识8 小时前
Linux-第四章web服务
linux·运维·服务器
fie88898 小时前
在CentOS 7上集成cJSON库的方法
linux·运维·centos
爱吃橘的橘猫8 小时前
如何解决VMware虚拟机中Linux系统终端不显示ens33 inet IP地址的问题
linux·运维·服务器·虚拟机
佐杰9 小时前
Jenkins使用指南1
java·运维·jenkins
kyle~9 小时前
计算机系统---USB的四种传输方式
运维·c++·计算机系统
梁正雄9 小时前
linux服务-Bonding网卡绑定工具
linux·运维·linux bonding·网卡绑定
云边有个稻草人9 小时前
Windows 里用 Linux 不卡顿?WSL + cpolar让跨系统开发变简单
linux·运维·服务器·cpolar
卓码软件测评9 小时前
软件数据库测试:【数据库质量保障:从单元测试到性能优化】
运维·数据库·测试用例·压力测试