博客
关于我
单元8:Linux系统的远程登陆服务
阅读量:783 次
发布时间:2019-03-22

本文共 1932 字,大约阅读时间需要 6 分钟。

一、Openssh的功能

Openssh是一个强大的安全套件,主要用于管理远程服务器的安全-shell访问权限。以下是其核心功能:
  • sshd服务的用途

    Openssh 提供了一个安全的远程登录服务,通过(frame overlooking网络可实现从本地主机到远程主机的安全bash连接。其服务端称为sshd daemon,而客户端则是ssh客户端工具。

  • 安装与配置

    要在Linux系统上安装并配置Openssh,可以通过以下步骤完成:

    • 安装包:使用包管理器安装openssh-server,例如apt install openssh-server。
    • 主配置文件:默认配置文件位于/etc/ssh/sshd_conf(可能根据系统版本有所不同)。
    • 端口设置:默认端口为22,但可根据需求进行端口号修改。
  • 客户端连接

    使用ssh命令访问远程服务器,格式为:

    ssh [username@]host_or_ip

    例如,连接IP地址172.25.254.129并以root用户登录,可以使用ssh root@172.25.254.129。

  • 二、SSH命令的使用

    SSH命令是连接远程服务器的核心工具,具有多种选项可满足不同的场景:
  • 参数解析

    • -l:指定远程主机的用户名。
    • -i:指定私钥文件,支持key-based认证。
    • -X:开启X11遥测传输,便于图形应用远程运行。
    • -t:启用后台模式,便于脚本自动化操作。
    • -f:指定 Officers文件用于调试。
  • 常用场景:

    • 默认连接:直接输入ssh root@172.25.254.129。
    • 私钥认证:使用ssh -i /root/.ssh/id_rsa root@172.25.254.129。
    • 通过跳板机:例如,先连接到中转服务器,再跳转到目标服务器,命令格式为ssh -J user@middle_host user@target_host。
  • 特殊情况处理:

    当感染Warning出现强制身份验证失败时,需检查/root/.ssh/known_hosts文件,删除或修复相关 pubkey,并重启sshd服务:

    vim ~/.ssh/known_hosts  systemctl restart sshd
  • ssh 常用参数

    - **`-l`**:指定远程用户,支持多级连接。 - **`-i`**:私钥认证,强烈推荐代替密码认证。 - **`-X`**:支持X11转发,适合图形软件。 - **`-o`**:自定义传输选项,提升连接速度或稳定性。 - **`-t`**:后台运行,配合`-f`或脚本执行。

    三、sshd key认证

    Key-based认证是现代 Openssh配置的最佳选择,它采用非对称加密模式,相比对称加密方式具有显著优势:
  • 认证类型

    • 对称加密:加密和解密使用相同的密钥,实现快速加密,但易于被破解,且密钥 文件易于泄露。
    • 非对称加密:加密使用公钥,解密使用对应的私钥。这种方式安全性高,且即使被截获,也难以因中间人攻击成功登录。
  • 密钥生成

    使用ssh-keygen生成非对称密钥:

    ssh-keygen

    生成完成后,一ustomedential路径为~/.ssh/id_rsa(私钥),并将公钥文件复制到服务器,并安装:

    ssh-copy-id -i /root/.ssh/id_rsa.pub username@ipaddress
  • 服务器配置

    将接收到的公钥添加到服务器的/root/.ssh/known_hosts文件中,确保感染过程顺利进行。

  • 四、sshd安全优化参数详解

    为保护服务器免受未经授权访问,需配置Openssh的一些重要安全参数:
  • 防火墙设置

    开启firewalld并限制开放端口:

    setenforce 0  systemctl disable --now firewalld
  • 超级用户访问控制

    使用PermitRootLogin和PasswordAuthentication参数:

    • PermitRootLogin yes/no:启用/禁用超级用户登录权限。
    • PasswordAuthentication yes/no:开启/关闭原始密码认证方式,建议关闭以强制使用密钥认证。
  • 用户访问控制

    可以通过AllowUsers和DenyUsers限制用户访问:

    • 允许特定用户访问:AllowUsers lee,只允许lee用户登录。
    • 禁止特定用户访问:DenyUsers lee,阻止lee用户登录。
  • 默认配置修改

    (注:如需进一步优化,可参考服务器的完整配置文件 /etc/ssh/sshd_conf)

  • 通过以上配置和调整,可以显著提升 SSH 连接的安全性,降低被攻击的风险。

    转载地址:http://wxewk.baihongyu.com/

    你可能感兴趣的文章
    python中enumerate、变量类型转换
    查看>>
    python中execute是啥_python – 为什么“c.execute(…)”打破循环?
    查看>>
    python中exit和break区别_Python中exit()和sys.exit()之间的区别
    查看>>
    python中h5的用法
    查看>>
    python中http协议编程_HTTP编程
    查看>>
    python中if的效率_python中关于if-else使用性能的一点感悟
    查看>>
    python中import os_Python:相对导入与绝对导入(import)、os.path、__file__
    查看>>
    python中is和==操作符
    查看>>
    python中range()函数的返回值是多少?
    查看>>
    Python中range对象的使用以及打印九九乘法表
    查看>>
    Python中reshape函数参数-1的意思?
    查看>>
    Python中set.discard和set.remove方法之间的运行时差异?
    查看>>
    Python接口自动化测试企业级实战
    查看>>
    python中tkinter中value_输入字段中的python Tkinter get()值
    查看>>
    Python中wx.FlexGridSizer
    查看>>
    Python中xPath技术和BeautifulSoup的使用
    查看>>
    python中yield的用法详解——最简单,最清晰的解释
    查看>>
    python中‘set.intersection()‘的算法是什么?
    查看>>
    Python中一个图形中的多个绘图
    查看>>
    python中一个好的持久同步队列
    查看>>