我有一个基于云的服务器。我按照本指南配置其安全性:http ://www.rubytreesoftware.com/resources/securely-setup-ubuntu-1404-server
SSH的配置如下:
# Edit or add the following configuration to sshd_config
PermitRootLogin no
PasswordAuthentication no
X11Forwarding no
AllowUsers andy deploy
我通过将笔记本电脑上的私钥添加到主机上的授权密钥来向远程服务器进行身份验证。
我担心的是,如果我在笔记本电脑上丢失了我的公钥会发生什么。我是否锁定了服务器?这里的最佳做法是什么 - 我如何降低丢失公钥的风险?
如果我的公钥更改会怎样?如果发生这种情况,我也可以“备份”我的公钥吗?我认为不是,因为它是特定于机器但值得检查的密钥对。
正在使用的防火墙是 ufw 并且配置如下:
# configure ufw
sudo ufw logging on
sudo ufw allow ssh
sudo ufw allow www
如果我应该采取其他措施来保护提供 Web 应用程序的服务器,请告诉我我错过了什么。任何有关保护基于云并服务于公共应用程序的服务器的好文章都将受到高度赞赏。
如果您没有备份,是的,您将被锁定,至少是暂时的,直到您可以恢复访问权限。
一些 VPS 提供商有一种方法可以替换服务器实例上的密钥。有些提供控制台访问。在其他情况下,您必须启动第二台临时服务器并为其提供对第一台服务器存储的访问权限以手动修复访问权限。
安全备份您的私钥。
为什么你的公钥会改变?如果你有你的私钥的备份,这不会是一个问题。
是的,您可以备份它。不,它不依赖于特定的机器。您可以将您的私钥加载到任何系统上以使用它(假设系统具有使用所述密钥的必要软件)。
在这一点上,您的问题变得过于广泛。我建议搜索一下常见的服务器加固原则。您会发现诸如设置 VPN、基于源 IP 限制管理访问(防火墙更改)以及使用 DenyHosts 或 fail2ban 等软件。