首先,把你的Directadmin授权IP设置为VPS的公网IP,系统设置为Debian 7 32bit。
操作之前先更新系统再安装一些需要的包
apt-get update && apt-get install curl -y
Directadmin安装时是要验证服务器IP的,而阿里云现在开出来的机器默认都是专用网络(网卡绑定的是内网IP),这就是一大坑。最终通过虚拟一个网卡绑定其分配的公网IP解决。过程如下
假设你的VPS公网IP为 47.23.23.23 内网IP为 172.17.2.2 建立虚拟网卡的命令如下
ifconfig eth0:0 47.23.23.23 netmask 255.255.255.0 up
建好后这个网卡网络是不通的,要设置下路由表nat转发
iptables -t nat -A POSTROUTING -s 47.23.23.23 -j SNAT --to-source=172.17.2.2
把这两个加入开机启动,要不重启后又没了
sed -i '/exit .*/d' /etc/rc.local
sed -i '$a\ifconfig eth0:0 47.23.23.23 netmask 255.255.255.0 up' /etc/rc.local
sed -i '$a\iptables -t nat -A POSTROUTING -s 47.23.23.23 -j SNAT --to-source=172.17.2.2' /etc/rc.local
sed -i '$a\exit 0' /etc/rc.local
然后重启,重启过后用如下命令测试下虚拟网卡和路由转发正不正常。正常的话应该会把Directadmin首页抓取下来。
curl --interface eth0:0 -v https://www.directadmin.com
如果不正常的话,输入 ifconfig -a
看下eth0:0有没有正常上线,iptables-save
看下有没有转发规则。
以上都正常的话,开始安装Directadmin
wget https://www.directadmin.com/setup.sh
chmod +x setup.sh
./setup.sh
等待安装完毕配置新域名时你会发现域名解析已经生效,但服务器好像没有正确接管,访问域名还是服务器的默认页面,而不是新建主页自动配置的一个页面,这是因为入站流量还是走的绑定内网IP的那个网卡eth0,而DA接管的是我们新建的虚拟网卡eth0:0,会导致DA认为此域名没有正常托管。解决的话也简单,把内网IP绑定到外网IP就可以了
在管理员管制面板找到IP地址管理
把内网IP加上去
点击公网IP
选择的IP链接到{公网IP} 选中内网IP,勾选掉添加到DNS然后点连接
再修改DA的配置文件
echo "lan_ip=172.17.2.2" >> /usr/local/directadmin/conf/directadmin.conf
重启下DA
service directadmin restart
至此完成。