我有 ubuntu 9.10 服务器。
首先,OpenSSH 和 SSHD 一样吗?
其次,在终端中输入 whereis sshd 时,我得到了以下信息:
whereis sshd
/usr/sbin/sshd
另外,当输入 whereis openssh 时,我得到了这个:
whereis openssh
/usr/lib/openssh
我怎么知道我是否有 openssh?
另外,一些在线教程建议打开 sshd_config,因此输入以下命令:
whereis sshd_config
/usr/share/man/man5/sshd_config.5.gz // I get this...
我该怎么办,因为正如您回答我关于安全性的其他问题一样,您指出配置 ssh 等的方式很重要。
有这方面的指南吗?我应该如何配置它?
顺便说一下,我将是该服务器的唯一用户……
如果您需要更多输入,请告诉我,我会更新这个问题。
谢谢
答案1
首先,OpenSSH 和 SSHD 一样吗?
简短回答:是的。
详细回答:不是这样的。OpenSSH 正式指的是促进 SSH 通信的一整套二进制文件、库等。SSHD 特指监听 ssh 客户端连接、控制其访问并授予客户端终端对服务器的访问权限的服务器进程。
我怎么知道我是否有 openssh?
如果您正在运行 Ubuntu,那么您有 openssh,因为这是 ubuntu 附带的默认 ssh 守护程序。
其 sshd_config 位于/etc/ssh/sshd_config
。运行$ man sshd_config
以获取完整的配置选项列表。
有这方面的指南吗?我应该如何配置它?
您需要什么具体帮助?发布更多详细信息,我会为您提供所需的信息。
答案2
ssh 手册页详细介绍了授权密钥。尝试使用“man -k ssh”获取与 ssh 相关的手册页列表。ssh-keygen 是为您创建密钥的工具。有一个辅助程序 ssh-copy-id 可帮助您安全地将公钥复制到另一个系统。
如果您想了解它们的工作原理,请查找有关公钥加密的文章。SSH 始终使用来自服务器的一个密钥。授权密钥使用来自客户端的密钥来识别客户端。授权密钥是存储在 ~/.ssh/authorized_keys 中的客户端密钥的副本。因此,它们仅对授权的用户 ID 有效。手册页记录了用于限制密钥用途的选项:程序、源 IP、端口转发等。
如果您想以批处理模式跨系统运行程序,授权密钥是一个不错的选择。至少限制可以使用给定密钥的系统是一个好主意。这将使使用被盗密钥变得更加困难。
Putty(适用于 Windows 的 ssh 客户端)使用不同的密钥存储格式。它将以适合 openssh 的格式提供公钥。这在 putty 文档中有介绍。
答案3
固态混合硬盘:SSH 守护进程,在端口 22(默认)监听来自其他客户端的 SSH 连接
OpenSSH:SSH 的安全开源实现(在 Linux World 相当流行),通常是用来实现 SSH 协议的软件包,它有多个支持 SSH 的二进制文件,包括这个守护进程服务。
OpenSSH 由许多程序组成:
- sshd
- 远程控制
- SCP
- ssh-keygen
- ssh 代理
- ssh 添加
- sftp 服务器
- 安全FTP
- ssh-密钥扫描
- ssh 密钥签名
答案4
该命令whereis foo
搜索名为“foo”的文件和文件夹。
要找出您正在使用的确切的 ssh(或任何)程序,请使用“which”命令,如下所示:
$which foo
/usr/bin/foo