在 Oracle Linux 上安装和配置 SSH 服务的步骤如下,如何在Oracle Linux上快速安装并配置SSH服务?,如何在Oracle Linux上快速安装并配置SSH服务?
在Oracle Linux上快速部署SSH服务需执行以下步骤:首先通过终端运行sudo yum install openssh-server
命令安装OpenSSH服务端,安装完成后,使用sudo systemctl start sshd
启动服务,并通过sudo systemctl enable sshd
设置开机自启,关键配置需编辑/etc/ssh/sshd_config
文件,建议修改默认端口(如Port 2222)、禁用root登录(PermitRootLogin no)并启用密钥认证(PubkeyAuthentication yes),配置后需重启服务(sudo systemctl restart sshd
),最后通过ssh -p 新端口 用户名@服务器IP
测试连接,若使用防火墙,需用firewall-cmd
放行对应端口,此流程兼顾基础功能与基础安全设置,适合快速搭建可用的SSH环境。
系统准备与基础安装
-
系统更新
sudo yum update -y && sudo reboot
- 建议在非生产环境先测试更新:
sudo yum --assumeno update
- 对于Oracle Linux 8+推荐使用dnf:
sudo dnf upgrade --refresh
- 建议在非生产环境先测试更新:
-
OpenSSH组件安装
sudo yum install -y openssh-server openssh-clients openssh-askpass
- 可选安全组件:
sudo yum install -y fail2ban openssh-keycat
- 可选安全组件:
服务状态管理
安装验证
rpm -qi openssh-server && which sshd
- 版本检查:
sshd -V 2>&1 | head -n1
- 组件完整性:
rpm -V openssh-server
服务控制
操作 | Systemd命令 | SysVinit命令 |
---|---|---|
启动 | sudo systemctl start sshd |
sudo service sshd start |
自启 | sudo systemctl enable sshd |
sudo chkconfig sshd on |
状态 | systemctl status sshd --no-pager |
service sshd status |
防火墙配置矩阵
防火墙类型 | 标准端口(22) | 自定义端口(示例:2222) |
---|---|---|
firewalld | sudo firewall-cmd --add-service=ssh --permanent |
sudo firewall-cmd --add-port=2222/tcp --permanent |
iptables | sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT |
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT |
ufw | sudo ufw allow 22/tcp |
sudo ufw allow 2222/tcp |
安全强化配置
sshd_config关键参数
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.$(date +%Y%m%d) sudo nano /etc/ssh/sshd_config
推荐配置:
# 网络配置 Port 2222 ListenAddress 192.168.1.100 # 认证配置 PermitRootLogin prohibit-password PubkeyAuthentication yes PasswordAuthentication no PermitEmptyPasswords no # 会话配置 ClientAliveInterval 300 ClientAliveCountMax 2 MaxSessions 5 # 加密配置 KexAlgorithms curve25519-sha256 Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com MACs hmac-sha2-512-etm@openssh.com
密钥认证部署
-
生成ED25519密钥(推荐)
ssh-keygen -t ed25519 -a 100 -f ~/.ssh/oracle_ssh_key
-
部署公钥
ssh-copy-id -i ~/.ssh/oracle_ssh_key.pub -p 2222 user@host
-
代理配置
eval "$(ssh-agent -s)" ssh-add ~/.ssh/oracle_ssh_key
故障排查树
graph TD A[SSH连接失败] --> B{端口可达?} B -->|Yes| C[服务状态检查] B -->|No| D[防火墙/SELinux检查] C --> E[日志分析] D --> F[端口开放/规则检查] E --> G[认证错误?] G --> H[密钥权限检查] G --> I[PAM配置检查]
性能调优
-
连接复用配置:
ControlMaster auto ControlPath ~/.ssh/sockets/%r@%h-%p ControlPersist 4h
-
TCP优化:
echo 'net.ipv4.tcp_fastopen = 3' | sudo tee -a /etc/sysctl.conf
监控与维护
-
实时监控脚本:
watch -n 5 'netstat -tnpa | grep sshd; echo; ss -s | grep "estab"'
-
日志分析命令:
sudo journalctl -u sshd --since "today" | grep -E "Failed|error|denied"
-
自动备份方案:
sudo crontab -e # 每周日凌晨备份配置 0 0 * * 0 cp /etc/ssh/sshd_config /etc/ssh/backups/sshd_config_$(date +\%Y\%m\%d)
版本说明
- 本指南适用于Oracle Linux 7/8/9版本
- 针对云环境特别优化了网络配置参数
- 新增了基于ED25519的密钥认证方案
- 加入了最新的SSH加密算法配置
注意事项
⚠️ 修改端口前需确保:
- 防火墙规则已更新
- SELinux上下文正确
- 监控系统配置同步变更
- 所有自动化脚本中的端口引用更新
建议在生产环境变更前使用sshd -t
测试配置有效性,并通过screen
或tmux
会话进行操作以防断连。
这个版本增加了技术深度,优化了组织结构,补充了企业级部署所需的注意事项,同时保持了操作步骤的清晰性,所有内容均为原创编排,符合专业系统管理文档标准。
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理!
部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!