phpIPAM是一个专用的IP地址管理工具,超越低技术选项通过提供自动ping扫描,状态报告,让您可以看到哪些主机已启动,哪些已停机,通过电子邮件发送有关你正在监控的主机更改的通知以及其他使管理基础架构更容易的功能。
在本教程中,您将在Ubuntu 16.04上运行的Linux,Apache,MySQL和PHP(LAMP)堆栈上安装和配置phpIPAM。
在开始之前,您将需要:
example.com
,你可以在腾讯云注册和购买域名。- 指向服务器的公共IP地址包含`example.com`的A记录。
- 指向服务器的公共IP地址包含`www.example.com`的A记录。
默认情况下,phpIPAM依赖其URL结构中的查询字符串将数据从应用程序的一个部分传递到另一个部分。
查询字符串附加到带有?
的URL 并包含一个或多个由&分隔的字段值对。
尽管不是绝对需要安装,但phpIPAM通过Apache的mod_rewrite模块支持URL重写,该模块将查询字符串转换为更具可读性和人性化的URL。
如果您没有通过将所有HTTP请求重定向到HTTPS来安全使用TLS / SSL证书条件去安装Apache安装中的mod_rewrite
,请立即使用Apache的a2enmod
实用程序启用mod_rewrite
,以便您可以在步骤2中启用URL重写。
$ sudo a2enmod rewrite
此命令在/etc/apache2/mods-enabled/rewrite/
中创建指向/etc/apache2/mods-available/rewrite.load
的符号链接,这将启用Apache下次启动时的模块。
如果mod_rewrite
已经启用,则输出将显示为:
$ Module rewrite already enabled
否则,输出将告诉您已创建符号链接,并且您需要重新启动Apache以激活更改。
Enabling module rewrite.
To activate the new configuration, you need to run:
service apache2 restart
即使Apache现在将mod_rewrite
在下次启动Web服务器时启用,你仍然需要修改你的phpIPAM虚拟主机配置,使mod_rewrite
可用于phpIPAM
。所以,暂时不要重启Apache。
而是在准备中打开为phpIPAM创建的Apache配置文件。
$ sudo nano /etc/apache2/sites-available/example.com-le-ssl.conf
将以下行粘贴到DocumentRoot部分下面的配置文件中。
phpipam.conf
...
<Directory /var/www/example.com/public_html
Options FollowSymLinks
AllowOverride all
Require all granted
</Directory>
...
Directory
是服务器上指令将被应用的位置。这应该是您计划安装phpIPAM的目录。如果您遵循准备中的Apache虚拟主机教程,则为/var/www/example.com/public_html
Options FollowSymLinks
告诉Apache遵循此目录中的符号链接。这是默认设置。AllowOverride all
表示.htaccess文件
在此目录中的任何指令都应覆盖任何相应的全局指令。Require all granted
告诉Apache允许来自所有主机的传入请求。保存并关闭文件以继续。
现在,在重新启动Apache之前测试配置更改。
$ sudo apache2ctl configtest
如果输出结果显示Syntax OK
,您已准备好继续前进。否则,请查看以前的说明并按照屏幕上的消息获取更多信息。
最后,重新启动Apache以启用mod_rewrite并激活新配置。
$ sudo systemctl restart apache2
因为你还没有安装phpIPAM,所以在https://example.com
没有什么可看的。那么,现在让我们下载并安装phpIPAM。
在正式安装指导建议两种方法安装phpIPAM:从项目的SourceForge存储库下载tarball或从其GitHub存储库克隆项目。
为了使将来的更新更容易,让我们使用后一种方法。
默认情况下,如果该目录为空,Git将仅克隆到现有目录中。
因此,使用ls命令查看在步骤1中为Apache配置的目录的内容。
$ ls /var/www/example.com/public_html
如果目录不为空,请使用基本的Linux导航和文件管理命令立即清除它。mv将内容移动到其他位置,并rm完全删除它们。
现在,将Git项目克隆到目录中。
$ git clone https://github.com/phpipam/phpipam.git /var/www/example.com/public_html
输出确认您正在克隆的位置,然后提供该过程的实时报告,包括Git期望复制的对象的数量以及它实际复制的数量。
Cloning into /var/www/example.com/public_html ...
remote: Counting objects: 14234, done.
remote: Compressing objects: 100% (50/50), done.
remote: Total 14234 (delta 27), reused 40 (delta 17), pack-reused 14161
Receiving objects: 100% (14234/14234), 11.38 MiB | 21.30 MiB/s, done.
Resolving deltas: 100% (10066/10066), done.
Checking connectivity... done.
您现在在服务器上拥有完整的phpIPAM应用程序,但是您仍然缺少phpIPAM运行所需的一些PHP模块。用apt-get
安装它们。
这些附加软件包为PHP提供了GNU Multiple Precision模块,用于处理任意长度的整数,Multibyte String模块用于处理不能用256个字符表示的语言,PEAR框架用于可重用的PHP组件,以及GD模块用于图像处理。
$ sudo apt-get install php7.0-gmp php7.0-mbstring php-pear php7.0-gd
重新启动Apache使新模块可用。
$ sudo systemctl restart apache2
通过服务器上的应用程序文件和其他模块,您就可以配置phpIPAM了。
phpIPAM在名为config.php
的文件中查找其主要配置设置。虽然默认情况下此文件不存在,但应用程序确实附带了一个示例配置文件。
如果遇到问题,请更改到安装目录并制作示例配置文件的副本以便稍后引用。
$ cd /var/www/example.com/public_html
$ cp config.dist.php config.php
打开新文件进行编辑。
$ nano config.php
查找标记的部分* database connection details
。这些设置告诉phpIPAM如何连接到将保存所有数据的MySQL数据库。
因为您已经在与phpIPAM相同的机器上安装了MySQL,所以您可以将\$db['host']
值设置localhost
。由于MySQL 3306默认侦听端口,因此您无需更改\$db['port']
值。
还没有针对phpIPAM的MySQL数据库设置,但在第4步中,phpIPAM基于Web的安装工具将使用您在此文件中输入的值创建数据库和数据库用户。因此,将\$db['user']
值设置为您希望phpIPAM连接到MySQL的用户的名称,将\$db['pass']
值设置为您希望phpIPAM在连接到MySQL时使用的密码,并设置\$db['name']
为您要为MySQL数据库提供的名称。
phpIPAM's config.php
<?php
/**
* database connection details
******************************/
$db['host'] = 'localhost';
$db['user'] = 'database_user';
$db['pass'] = 'database_password';
$db['name'] = 'database_name';
$db['port'] = 3306;
...
警告:如果
mysql_secure_installation
在准备中安装MySQL时运行脚本,请务必在此处创建满足当前策略要求的密码。在步骤4中创建数据库时,如果不这样做将导致错误。
除了以前的设置,此文件中还有许多其他选项可供您使用。例如,您可以使用SSL证书配置与数据库的安全连接,可以激活各种数据库事件的电子邮件通知,还可以启用调试模式以生成更详细的日志。但是,对于基本安装,您可以将这些设置的其余部分设置为其默认值。
完成编辑后,保存并关闭文件。
现在您已经为phpIPAM创建了主配置文件,现在可以连接到Web界面并完成安装。
安装过程的最后一步包括为phpIPAM创建MySQL数据库和用户,以及为phpIPAM的Web界面设置管理员用户帐户。所有这些都可以通过phpIPAM的基于Web的安装向导完成。
浏览您的浏览器https://example.com/install80
。您将看到phpIPAM安装主页欢迎您使用该向导,并要求您选择要执行的安装类型。如果您无法启动此屏幕,请验证防火墙是否阻止端口访问,并回溯前面的步骤以解决问题。
此屏幕上有三个选项 - New phpipam installation, Migrate phpipam installation, Working installation(新的phpipam安装,迁移phpipam安装和工作安装)-每个选项都有一个简短的用途说明。当您设置新的phpIPAM安装时,请按标记为新的phpipam安装的按钮。
在下一个屏幕上,将描述安装过程的其余部分,指出正式安装文档以获取更多详细信息,并要求您确定要执行的数据库安装类型。
同样,您有三种选择:
为简单起见,通过单击Automatic database installation按钮选择完全自动化的选项。
该向导现在将要求您提供连接到MySQL所需的信息。这包括应该连接的用户的登录凭据,数据库的位置以及数据库的名称。
由于您需要向导来创建新数据库和用户,因此必须为具有足够权限的用户输入登录凭据。您的MySQL root用户是一个不错的选择。
默认情况下,数据库的位置设置为localhost,其名称设置为phpipam。如果您要更改其中任何一个,则需要编辑在步骤3中创建的config.php文件,然后重新启动安装向导。
您可以通过单击“ Show advanced options(显示高级选项)”按钮来访问其他安装选项。在这里,您将获得三个选择:
输入您希望向导连接的MySQL用户的用户名和密码,将高级选项设置为其默认值,然后按“安装phpipam数据库”按钮。
您将看到一条确认消息,告知您向导已成功安装数据库。如果不这样做,请查看向导的错误消息以获取其他帮助。
单击继续以继续安装。
在此屏幕上,向导会提示您设置Web界面的管理员用户密码,每个phpIPAMWeb界面屏幕顶部显示的标题以及phpIPAM安装的URL。
输入您要使用的管理员密码,phpIPAM界面的描述性标题,以及指向您的phpIPAM安装的完全限定域名,然后按“保存设置”按钮。
您现在应该看到一条确认消息,告诉您设置已成功保存。如果没有,请使用向导的错误消息来诊断问题。
单击继续登录按钮转到phpIPAM安装的主页,然后使用您在管理员密码字段中输入的管理员用户名和密码登录。phpIPAM安装和配置现已完成,因此您可以开始添加信息以更轻松地管理您监控的网络。
在本文中,您安装并配置了phpIPAM,一个开源IP地址管理Web应用程序。您现在可以监控自己的基础架构和其他网络中的IP地址使用情况。参阅有关phipIPAM内置API的官方文档,请浏览官方入门教程。
参考文献:《How To Install phpIPAM on Ubuntu 16.04》
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。