
技术弄巷
前言
SSH 是 Linux 服务器远程管理、文件传输、批量运维的基石协议,相比明文传输的 Telnet,SSH 全程加密、安全可靠,是生产环境唯一推荐的远程连接方式。
本文从 SSH 原理、服务检查、连接命令、文件传输、加密机制、免密配置到服务安全优化,一站式覆盖运维必备的 SSH 全部知识点,看完即可用于生产环境配置与加固。
一、SSH 基础介绍
1. 什么是 SSH
2. SSH vs Telnet
3. Linux 服务器管理方式
二、SSH 服务检查(服务端)
1. 确认服务运行
ps -elf | grep sshdnetstat -tunlp | grep sshd
2. 查看服务软件
rpm -qf /usr/sbin/sshd# 输出:openssh-server
三、SSH 客户端工具
- Windows:Xshell、SecureCRT、Putty
which sshrpm -qf /usr/bin/ssh# 输出:openssh-clients
四、SSH 常用操作
1. 远程连接
ssh 用户名@服务器IP
2. 远程执行命令
ssh root@192.168.140.10 uptimessh root@192.168.140.10 ifconfig ens33
3. 远程文件传输
scp 全量拷贝
# 本地 → 远程scp /opt/file.txt root@192.168.140.11:/tmp# 远程 → 本地scp root@192.168.140.11:/etc/passwd /tmp# 递归拷贝目录scp -r /opt/linux/ root@192.168.140.11:/tmp
rsync 增量拷贝(推荐)
rsync -av /opt/python/ root@192.168.140.11:/tmp/
五、SSH 加密原理
1. 加密方式
2. SSH 首次连接
- 客户端保存到
~/.ssh/known_hosts
六、SSH 免密登录(运维必备)
1. 认证方式
2. 免密配置步骤
1)客户端生成密钥对
ssh-keygen -t rsa# 一路回车,无需设置密码
生成文件:
~/.ssh/id_rsa~/.ssh/id_rsa.pub
2)分发公钥到服务器
ssh-copy-id root@192.168.140.11
公钥自动写入服务器:~/.ssh/authorized_keys
3)验证免密
ssh root@192.168.140.11
3. 重要说明
- Windows 可生成密钥并将公钥追加到 Linux 的
authorized_keys实现免密
七、SSH 服务安全配置
配置文件:/etc/ssh/sshd_config
常用优化项:
Port 44444
PasswordAuthentication no
PermitRootLogin no
UseDNS no
配置后重启服务:
systemctl restart sshd
核心要点总结
- SSH 是加密远程管理协议,端口 22,生产环境必用。
- 服务端包
openssh-server,客户端包 openssh-clients。 ssh用于连接/执行命令,scp全量拷贝,rsync增量传输。- 免密登录用
ssh-keygen + ssh-copy-id,批量运维必备。 - 生产环境必须修改默认端口、禁止 root 登录、关闭密码认证、关闭 UseDNS。
结尾互动
SSH 是 Linux 运维的第一道门,安全配置与免密体系直接关系服务器安全与运维效率。
如果这篇干货对你的工作有帮助,欢迎点赞、在看、转发给更多运维同行!
关注我,持续更新 Linux 远程管理、自动化运维、Shell 脚本、服务加固等硬核实战内容,一起做安全、高效的运维人!

