这是我的服务器(在 Amazon EC2 中)的样子:
服务器 1 服务器 2 服务器 3 __________________________ _____________________ _______________ | 云监控守护进程 | | Memcached 守护进程 | | 豆茎 | | | | Memcached 守护进程 | ________________ | “敌对”用户进程 | / | Memcached 守护进程 | | “敌对”用户进程 | / | Memcached 守护进程 | | “敌对”用户进程 | / | Memcached 守护进程 | | “敌对”用户进程 | / ______________________ | “敌对”用户进程 | / __________________________
一台服务器上有多个用户进程。然后,每个用户都有自己的 memcached 实例在(单独的)服务器上运行(与许多其他 memcached 实例)。如果没有任何类型的安全性(默认情况下),用户进程 B 可以猜测用户 A 的 memcached 实例的端口并访问它。如何保护这个系统,以便用户 C 只能访问 memcached 实例 C 而不能访问其他(即使 memcached 实例都在同一台服务器上)?我的用户不需要做任何事情来使用安全性(只需像往常一样继续连接到 memcached 端口),这一切都应该由系统自动发生。
此外,服务器上的 Cloud Monitor Daemon 以及“敌对”用户进程需要能够访问远程 beanstalkd 服务器。Beanstalkd 也没有身份验证,所以如果我的 Monitor Daemon 可以访问 beanstalkd,那么“敌对”用户进程也可以,我不希望这样。我怎样才能保护这部分?