首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为web应用程序在云上保护Ubuntu web服务器

为web应用程序在云上保护Ubuntu web服务器
EN

Security用户
提问于 2017-09-11 15:13:04
回答 3查看 302关注 0票数 1

我即将发布一个python web应用程序。服务器是由1&1托管的Ubuntu远程计算机。

现在,我使用控制台命令重新启动python服务器应用程序。

在安全性方面,在我的Ubuntu机器公开域名之前,必须做些什么?

谢谢

EN

回答 3

Security用户

发布于 2017-09-11 18:21:49

创建一个非根用户,在该用户下运行您的应用程序。

设置ufw (简单防火墙),除了SSH,http和HTTPS。这比iptables (imo)容易得多。

禁用SSH密码。设置钥匙,只使用它们。

此外,设置Fail2潘基文来监视日志,并采取任何可能需要的附加操作(IP黑名单等)。

有很多在线指南来加强Ubuntu,这将是我的‘必须做’的步骤。我推荐Linode指南--它们通常质量很好(https://www.linode.com/docs/security/securing-your-server)。

还请记住,即使没有域名,如果您的应用程序运行在远程的机会,它已经找到并探测基于IP:端口单独。一旦服务器准备就绪,我就会执行所有这些步骤。

票数 1
EN

Security用户

发布于 2017-09-11 17:12:07

假设您的应用程序本身是安全的,并且您信任您的服务器主机,那么最简单的保护系统的方法是:

  1. 保持系统/包的更新和修补(sudo apt upgrade)
  2. 只跑你需要跑的东西。删除在端口上监听或保持停止的不必要的服务器包(chkconfig <service> stop && chkconfig <service> off)
  3. 使用防火墙。如果您的服务器主机提供了防火墙系统,请使用它。如果没有,请配置IPTables以限制服务器的通信量。

如果您没有设置服务器的经验,那么了解要停止的服务可能是非常重要的。通常,托管服务器是非常小的,并且只运行最基本的程序以尽可能提高资源效率,因此您可能不必在那里做太多事情。

编辑:刚刚浏览了你的服务器主机的网站。它们确实提供了防火墙管理工具和入侵保护系统,您可以将它们配置为只允许通信到应用程序端口。如果您能够负担得起他们提供的备份/快照,您应该采取它,并使之成为一个点,采取经常快照(备份)您的服务器,以防万一。这是很好的练习。

票数 0
EN

Security用户

发布于 2017-09-12 22:13:50

我肯定会说,在web应用程序中,通过CloudFlare路由所有流量是必不可少的。他们的DNS不仅速度非常快,而且还提供了免费的SSL证书(共享的,您可以升级到专用的),在没有任何设置的情况下(除了更新名称服务器之外),允许您使用https,从而实现安全连接(如果您选择Cloudflare进入Crypto模块并启用“始终使用HTTPS”,则所有通信必须通过加密连接路由)。许多人会争辩说,像Letsencrypt这样的东西可以提供这样的服务,但是Cloudflare也隐藏了( web服务器的)原始IP地址,这样用户就不能通过点击域之类的方式找到IP。此外,所有这些都提供了各种其他工具,如DDoS保护、IP黑名单和其他各种有用的模块,这些模块无疑将在安全性方面有所帮助。

许多大公司利用CloudFlare,因为它们非常优秀。

票数 0
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/169226

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档