更新软件源有什么用?

在Linux系统中安装SSH(Secure Shell)是远程管理服务器的关键步骤,以下为详细操作指南,涵盖主流发行版安装、配置优化及安全加固,所有命令均需root权限(使用sudo -isudo前缀)。


安装SSH服务

Debian/Ubuntu 系

# 安装OpenSSH服务端
apt install openssh-server -y
# 启动服务并设开机自启
systemctl enable --now ssh

RHEL/CentOS/Fedora 系

# CentOS 8+/Fedora
dnf install openssh-server -y
# CentOS 7
yum install openssh-server -y
# 启动服务并设开机自启
systemctl enable --now sshd

Arch/Manjaro 系

pacman -S openssh
systemctl enable --now sshd

防火墙配置

允许默认SSH端口(22):

# Ubuntu/Debian (UFW)
ufw allow 22
# CentOS/Fedora (Firewalld)
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reload
# 通用iptables(临时)
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

安全加固配置

编辑配置文件:
nano /etc/ssh/sshd_config

关键优化项:

# 修改默认端口(避免暴力扫描)
Port 2222  # 示例端口,需同步更新防火墙
# 禁止root直接登录
PermitRootLogin no
# 仅允许特定用户登录
AllowUsers your_username
# 禁用密码登录(推荐密钥认证)
PasswordAuthentication no
# 限制登录尝试次数
MaxAuthTries 3
# 启用密钥认证
PubkeyAuthentication yes

应用配置:

systemctl restart sshd  # 重启服务生效

密钥认证设置(更安全)

本地生成密钥对

ssh-keygen -t ed25519  # 默认保存到~/.ssh/

上传公钥到服务器

ssh-copy-id -p 22 -i ~/.ssh/id_ed25519.pub user@server_ip
# 若修改过端口,替换-p后的端口号

连接测试

ssh -p 2222 your_username@server_ip  # 指定端口和用户

✅ 成功提示:出现服务器终端即配置正常
❌ 失败排查:检查防火墙、端口、sshd服务状态(systemctl status sshd


故障处理

  • 端口占用netstat -tuln | grep 22 检查冲突进程
  • 连接拒绝:确认sshd运行中(systemctl status sshd
  • 权限错误:确保~/.ssh权限为700,密钥文件为600

安全建议

  1. 定期更新apt upgrade openssh-serveryum update openssh-server
  2. Fail2Ban防护:自动屏蔽暴力破解IP
  3. 证书轮换:每3-6个月更换一次密钥对
  4. 审计日志:监控/var/log/auth.log(Debian)或/var/log/secure(RHEL)

引用说明基于OpenSSH官方文档(openssh.com)及Linux man pages,配置建议遵循NIST SP 800-123安全指南,实际部署请结合您的发行版手册调整。

通过以上步骤,您已建立安全的SSH连接环境,始终遵循最小权限原则,并定期审查访问日志,可显著提升服务器防护能力。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/8688.html

(0)
酷番叔酷番叔
上一篇 13小时前
下一篇 13小时前

相关推荐

  • Linux如何实时监控网速?

    命令行工具(精准高效)nload(实时流量监控)安装(Debian/Ubuntu):sudo apt install nload使用:nload界面显示实时下载(Incoming)和上传(Outgoing)速度(单位:KB/s、MB/s),按 ← → 方向键切换网卡,F2显示选项,q退出,特点:轻量级、直观,适……

    18小时前
    300
  • Linux目录覆盖怎样操作最安全?

    目录覆盖的常见场景完全替换:用新目录内容覆盖旧目录(旧内容被删除),增量合并:将新目录内容合并到旧目录(保留旧目录中未被覆盖的文件),典型用例:更新网站代码、恢复备份数据或同步开发环境,命令行工具实现目录覆盖cp 命令(复制覆盖)完全覆盖目录(删除旧目录内容,替换为新内容):cp -Rf /path/to/so……

    2025年6月16日
    2000
  • Linux操作MySQL文件如何避免数据损坏?

    为什么需要打开MySQL文件?MySQL在Linux中存储多种文件:数据文件:表结构(.frm)、InnoDB数据(.ibd)日志文件:错误日志(error.log)、二进制日志(binlog.0000*)、慢查询日志配置文件:my.cnf 或 my.ini直接查看这些文件可用于诊断问题(如日志分析)或数据恢复……

    2025年7月1日
    1300
  • Linux环境变量设置错误后果?

    Linux环境变量存储路径、用户设置和系统配置等关键参数,正确设置可提升开发效率并保障软件正常运行。

    2025年7月12日
    1300
  • Linux改root密码如何避免风险?

    当前用户拥有sudo权限(推荐)适用场景:已知普通用户密码且该用户已被加入sudo组(如Ubuntu默认配置),步骤:打开终端,执行命令: sudo passwd root输入当前用户的登录密码(验证sudo权限),输入两次新的root密码(输入时无星号提示,属正常现象),出现 passwd: password……

    3天前
    600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信