`
topzhujia
  • 浏览: 56034 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Linux ssh安全设置

阅读更多

SSH服务器配置文件是/etc/ssh/sshd_conf。在你对它进行每一次改动后都需要重新启动SSH服务,以便让改动生效。

1、修改SSH监听端口

默认情况下,SSH监听连接端口22,攻击者使用端口扫描软件就可以看到主机是否运行有SSH服务,将SSH端口修改为大于1024的端口是一个明智的选择,因为大多数端口扫描软件(包括nmap)默认情况都不扫描高位端口。

打开/etc/ssh/sshd_config文件并查找下面这样的行:

Port 22

修改端口号并重新启动SSH服务:

以下是代码片段:
/etc/init.d/ssh restart

2、仅允许SSH协议版本2

有两个SSH协议版本,仅使用SSH协议版本2会更安全,SSH协议版本1有安全问题,包括中间人攻击(man-in-the-middle)和注入(insertion)攻击。编辑/etc/ssh/sshd_config文件并查找下面这样的行:

Protocol 2,1

修改为

Protocol 2

3、仅允许特定的用户通过SSH登陆

你不一个允许root用户通过SSH登陆,因为这是一个巨大的不必要的安全风险,如果一个攻击者获得root权限登陆到你的系统,相对他获得一个普通用户权限能造成更大的破坏,配置SSH服务器不允许root用户通过SSH登陆,查找下面这样的行:

PermitRootLogin yes

yes修改为no,然后重新启动服务。现在,如果你想使用特权用户,你可以先以其他用户登陆,然后再转换到root

创建一个没有实际权限的虚拟用户是一个明智的选择,用这个用户登陆SSH,即使这个用户遭到破解也不会引起什么破坏,当创建这个用户时,确保它属于wheel组,并修改/etc/sudoers,添加wheel组的权限。因为那样你才能切换到特权用户。

如果你想让一列用户都能通过SSH登陆,你可以在sshd_config文件中指定它们,例如:我想让用户anzedasakimy能通过SSH登陆,在sshd_config文件的末尾我添加下面这样一行:

AllowUsers anze dasa kimy

4、创建一个自定义SSH banner

如果你想让任何连接到你SSH服务的用户看到一条特殊的消息,你可以创建一个自定义SSH banner,只需要创建一个文本文件(我的是/etc/ssh-banner.txt),然后输入你想的任何文本消息,如:

以下是代码片段:

*This is a private SSH service. You are not supposed to be here.*
*Please leave immediately. *

编辑好后,保存这个文件,在sshd_config中查找下面这样一行:

以下是代码片段:
#Banner /etc/issue.net

取消掉注释【将#去掉】,然后将路径修改为你自定义的SSH banner文本文件。


分享到:
评论

相关推荐

    Linux_SSH配置和禁止Root远程登陆设置文档

    本文将详细介绍如何在Linux环境下配置SSH服务,特别是如何修改默认端口、禁止Root远程登录,以及如何设置公钥认证,从而加强系统的安全性。 #### 二、配置SSH服务 ##### 1. 修改默认端口 SSH服务默认监听在TCP...

    linuxssh安全的加固方法.pdf

    Linux SSH 安全加固方法可以通过禁用 ROOT 远程登录、设置普通权限用户、禁用某个用户登录、使用密钥认证登录服务器等方式来增强服务器的安全性。同时,需要注意配置文件的权限、密钥的安全性和传输等问题,以确保...

    linux ssh ssh

    Linux SSH (Secure Shell) 是一个网络协议,用于在不安全的网络上安全地远程登录Linux系统,执行命令和传输数据。SSH提供了加密的网络通信,确保了数据在传输过程中的安全性,防止被窃听或篡改。在Windows系统中,...

    加固Linux SSH保证服务器安全.pdf

    加固Linux SSH保证服务器安全.pdf

    linux ssh的配置

    ### Linux SSH 的配置详解 ...通过详细配置 `/etc/ssh/ssh_config` 和 `/etc/ssh/sshd_config` 文件中的各项参数,可以有效地提高 Linux SSH 的安全性和功能性,从而更好地满足不同场景下的需求。

    嵌入式Linux SSH服务搭建 编译好的ssh

    嵌入式Linux SSH服务搭建是将Secure Shell (SSH) 服务应用于资源有限的嵌入式设备上,以实现远程安全登录、文件传输等功能。SSH是一种网络协议,它提供了加密网络服务,确保在不安全的网络环境中传输数据的安全性。...

    linux下怎样设置ssh无密码登录.docx

    设置 SSH 无密码登录可以提高 Linux 服务器的安全性和便捷性。在本文中,我们将介绍如何在 Linux 中设置 SSH 无密码登录。 设置 SSH 无密码登录的步骤: 1. 创建 SSH 密钥对 在 Linux 主机 A 上,创建一个 SSH ...

    linuxssh安全的加固方法.docx

    加强SSH安全的一个关键步骤是采用密钥对认证而非密码认证。首先,以root用户身份登录,然后编辑`/etc/ssh/sshd_config`启用密钥认证。确保以下几项设置正确: - `StrictModes no` - `RSAAuthentication yes` - `...

    java linux ssh登陆

    标题“Java Linux SSH登录”指的是使用Java编程语言与Linux操作系统进行安全外壳(SSH)通信的过程。在描述中提到,这个过程通常涉及建立一个通道并执行单个命令。这里,我们将会详细探讨Java如何通过SSH连接到Linux...

    通过SSH访问远程Linux服务器的四个安全策略.pdf

    "通过SSH访问远程Linux服务器的四个安全策略" 在远程访问Linux服务器时,安全性是一个非常重要的方面。下面四个安全策略可以帮助您更好地保护您的Linux服务器。 Linux SSH 安全策略一:关闭无关端口 在 Linux ...

    linux下ssh安全连接

    linux下ssh安全连接,使用密钥来验证,可以不需要密码来登录

    嵌入式Linux中SSH服务搭建

    在嵌入式Linux系统中搭建SSH服务是常见的需求,尤其是在开发板上,开发者需要通过安全的方式进行文件传输和远程控制。SFTP(Secure File Transfer Protocol)是SSH的一部分,提供了一个安全的方式来传输文件,它可以...

    linux常用软件ssh

    Linux SSH(Secure Shell)是一种网络协议,用于在不安全的网络上安全地远程登录到Linux或Unix系统。SSH提供加密的网络服务,包括命令行接口(CLI)的远程登录、文件传输以及网络服务的控制。它取代了早期的不安全的...

    ssh安全远程连接方法,linux中远程安全连接方法

    七、SSH安全最佳实践 - 使用非默认的SSH端口,降低被扫描攻击的风险。 - 禁止密码登录,强制使用密钥对认证。 - 定期更换密钥,增加安全性。 - 使用防火墙限制SSH访问来源。 - 配置SSH的“AllowUsers”或“DenyUsers...

    linux ssh tftp ftp

    综上所述,SSH、TFTP、FTP以及NFS在Linux系统中分别承担着不同的角色,它们的正确配置对于维护系统安全、高效的数据传输和资源共享至关重要。掌握这些协议的基本配置和使用方法,对于网络管理员和系统工程师来说是不...

    linux 中ssh的安装与使用.doc

    Linux 中 SSH 的安装与使用是一种远程登录和文件传输的安全协议,整个过程包括安装、配置和使用三个部分。 一、安装 SSH 在 Linux 4 版本中,SSH 已经默认安装上了,默认版本为 SSH2.1。如果系统中没有安装 SSH,...

    linux ssh 客户端 服务端 window服务端linux服务端 安装配置等 搜集整理较全

    - `Port`:设置SSH服务器监听的端口号,默认为22。 - `PermitRootLogin`:允许或禁止root用户通过SSH登录。 - `PasswordAuthentication`:开启或关闭密码认证。 - `PubkeyAuthentication`:开启或关闭公钥认证。 - `...

    linux_ssh命令

    Linux SSH 命令是一种非常重要的工具,用于在不同计算机之间建立安全的连接。通过 SSH,用户可以在本地机器上控制远程服务器,执行各种任务,如文件传输、命令执行等。本文将详细介绍 SSH 的基本概念以及与之相关的 ...

    Linux下SSH与SecureCRT密匙完美使用

    **加强SSH安全** 为了提高安全性,可以禁用OpenSSH的密码认证。编辑`/etc/ssh/sshd_config`,将`PasswordAuthentication`设置为`no`。这样,SSH服务器将仅接受RSA密钥进行身份验证。 如果已成功设置RSA密钥,丢失...

    linux开启SSH

    SSH的主要用途是提供一种安全的方式来远程管理Linux系统。相比于传统的telnet等不安全的远程管理方式,SSH提供了数据加密功能,确保了数据的安全性。这对于需要远程访问服务器的场景来说至关重要。 #### 三、Linux...

Global site tag (gtag.js) - Google Analytics