博客
关于我
单元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不协调机器人消息.内容
    查看>>
    Python与C#之间内存共享互传信息
    查看>>
    python与c语言混合编程_你试过C语言和Python一起混合编程吗?两者相加不是已经无敌了!...
    查看>>
    python与excel
    查看>>
    Python与Excel的完美邂逅:深入浅出,手把手教你轻松玩转Excel数据操作
    查看>>
    python与flask_Python编程中flask的简介与简单使用
    查看>>
    python与图灵机器人交互(WXPY版本)
    查看>>
    python与运算符_python运算符
    查看>>
    python两个列表获取交集,并集,差集
    查看>>
    python两个字典合并,两个list合并
    查看>>
    Python两个版本共存时,命令行升级pip
    查看>>
    Python两个版本共存时,怎么验证是否安装成功 scrapy
    查看>>
    Python两个版本共存时,通过pip安装Scrapy
    查看>>
    python两组变量的相关关系散点图_变量是什么?变量间的两种关系——函数关系和相关关系(小学版)...
    查看>>
    Python中 pass语句的作用
    查看>>
    python中 urllib, urllib2, httplib, httplib2 几个库的区别
    查看>>
    python中 yaml库 & json库 & xmltodict库使用
    查看>>
    python中 将你的名字转化成为二进制并输出
    查看>>
    Python中*args 和**kwargs的用法
    查看>>
    Python中*args 和**kwargs的用法
    查看>>