使用 PHP 静态更改 Apache 服务器的 IP 地址

使用 PHP 静态更改 Apache 服务器的 IP 地址

我想使用 php 静态分配我的 Arch linux 的 IP 地址。我想通过使用网络掩码、接口、广播、地址和网关来更改 IP。用户将值放入 html 页面中。 html 页面将数据发布到 PHP 页面。我想使用这些数据更改IP。何做这个?请帮我解决这个问题。

可以使用文件吗?

我正在考虑使用文件直接写入 rc.conf !!...这会起作用吗?如何??..我用 apache 和 php 启动了我的 arch linux ..非常感谢您的帮助。

答案1

如果您想永久更改 IP,则需要修改 中的值rc.conf。修改后需要重启network服务。您可以通过两种方式做到这一点:

/etc/rc.d/network restart

或者

rc.d restart network

要修改rc.conf和重新启动服务,您需要 root 权限。由于以 root 身份运行 apache 并不是一个好主意,因此我建议创建一些使用 sudo 启动的包装器来重新启动服务并修改rc.conf.

PHP 脚本 -> 启动 shell 脚本sudo ./modify-network IP NETMASK GW

其 Sudo 条目的格式应为:

www ALL=(root) NOPASSWD: /path/to/modify-network

请记住在 PHP 脚本中过滤您的输入。检查IP号码是否是真实的IP而不是rc.conf注入;)就像192.168.0.100"\nDAEMONS=(!apache)

并记住在更改后将用户重定向到新地址(当用户按下“更改 IP”按钮、发布数据、执行一些 JavaScriptsleep 1window.location.href = 'http://NEW_IP/';

您还可以使用 SELinux 为该解决方案添加更多安全性...

相关内容