如何将 VSFTPD 绑定到共享主机上的特定域名?

如何将 VSFTPD 绑定到共享主机上的特定域名?

大家好。我有一个 Ubuntu 16.04 VPS,我在其上配置了一个共享主机,其中有两个虚拟主机位于同一 IP 上(例如 domain1.com 和 domain2.com)。我想运行 FTP 服务器,并且只允许 domain1.com,不允许 domain2.com。有人建议我使用 VSFTPD 来执行此操作,但我找不到任何操作方法。请帮忙。抱歉我的英语不好 :)

答案1

所有需要的iptables命令

清除现有链

sudo iptables --flush
sudo iptables --delete-chain

允许环回

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT

允许所有 ICMP

sudo iptables -A INPUT -p icmp --icmp-type any -j ACCEPT
sudo iptables -A OUTPUT -p icmp -j ACCEPT

允许已建立的连接

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

允许公共服务但拒绝域“domain2.com”的 ftp

FTP

sudo iptables -I INPUT -p tcp --dport 21 -m string --string "Host: domain2.com" --algo bm -j DROP
sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT

HTTP

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

HTTPS

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

SSH

sudo iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

允许转发

sudo iptables -P FORWARD ACCEPT

全部拒绝接受以上规则

sudo iptables -A INPUT -j DROP

默认策略

sudo iptables -P INPUT DROP
sudo iptables -P OUTPUT ACCEPT

节省

sudo service iptables save

相关内容