我需要能够为给定用户分配特定端口进行监听。假设我有用户 X,我希望他只能监听端口 500。用户 Y 只能监听端口 501。我该怎么做?我正在使用 debian lenny。
编辑:用户 X 和 Y 不应该能够接触给定范围内未分配给他们的任何其他端口。(例如端口 100-1000)
答案1
非 root 用户无法监听(甚至打开)1024 以下的端口。
要限制用户使用 1024 以上的其他单个端口,可以使用 iptables 的 --uid-owner 选项。请参阅“man iptables”。
如果您不想亲自处理 iptables(但仍对网络/防火墙有一定的了解),我个人最喜欢的防火墙解决方案是 firehol。它有用户/uid 命令来帮助您设置每个用户的限制。