专栏首页云计算教程系列如何在Ubuntu 16.04上安装phpIPAM
原创

如何在Ubuntu 16.04上安装phpIPAM

介绍

phpIPAM是一个专用的IP地址管理工具,超越低技术选项通过提供自动ping扫描,状态报告,让您可以看到哪些主机已启动,哪些已停机,通过电子邮件发送有关你正在监控的主机更改的通知以及其他使管理基础架构更容易的功能。

在本教程中,您将在Ubuntu 16.04上运行的Linux,Apache,MySQL和PHP(LAMP)堆栈上安装和配置phpIPAM。

准备

在开始之前,您将需要:

  • 一个Ubuntu 16.04服务器,包括拥有sudo权限的非root用户。
  • 完全注册的域名。本教程全程使用example.com,你可以在腾讯云注册和购买域名
  • 为您的服务器设置以下DNS记录。您可以按照此主机名教程获取有关如何添加它们的详细信息。
-   指向服务器的公共IP地址包含`example.com`的A记录。
-   指向服务器的公共IP地址包含`www.example.com`的A记录。

第一步 - 配置Apache

默认情况下,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

在正式安装指导建议两种方法安装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

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安装的按钮。

phpipam安装

在下一个屏幕上,将描述安装过程的其余部分,指出正式安装文档以获取更多详细信息,并要求您确定要执行的数据库安装类型。

同样,您有三种选择:

  • Automatic databaseinstallation(自动数据库安装:向导将使用您在步骤3中输入的config.php在步骤3中输入的信息来创建MySQL数据库和用户。
  • MySQL import instructions(MySQL导入说明:您将使用MySQL自己的mysqlimport实用程序从您提供的纯文本文件创建数据库。
  • Manual database installation(手动数据库安装:向导将为您提供手动创建新phpIPAM数据库所需的默认SQL命令。

为简单起见,通过单击Automatic database installation按钮选择完全自动化的选项。

自动化安装

该向导现在将要求您提供连接到MySQL所需的信息。这包括应该连接的用户的登录凭据,数据库的位置以及数据库的名称。

由于您需要向导来创建新数据库和用户,因此必须为具有足够权限的用户输入登录凭据。您的MySQL root用户是一个不错的选择。

默认情况下,数据库的位置设置为localhost,其名称设置为phpipam。如果您要更改其中任何一个,则需要编辑在步骤3中创建的config.php文件,然后重新启动安装向导。

您可以通过单击“ Show advanced options(显示高级选项)”按钮来访问其他安装选项。在这里,您将获得三个选择:

  • Drop existing database(删除现有数据库)在运行安装过程之前,向导将尝试删除与MySQL数据库名称字段中的值同名的数据库。默认情况下这是关闭的。
  • Create database(创建数据库)向导将尝试创建一个与MySQL数据库名称字段中的值同名的数据库。默认情况下会启用此功能。
  • Create permissions(创建权限)向导将尝试设置新数据库的权限,限制只能访问config.php定义的MySQL用户。默认情况下会启用此功能。

输入您希望向导连接的MySQL用户的用户名和密码,将高级选项设置为其默认值,然后按“安装phpipam数据库”按钮。

填写用户名和密码

您将看到一条确认消息,告知您向导已成功安装数据库。如果不这样做,请查看向导的错误消息以获取其他帮助。

单击继续以继续安装。

继续安装

在此屏幕上,向导会提示您设置Web界面的管理员用户密码,每个phpIPAMWeb界面屏幕顶部显示的标题以及phpIPAM安装的URL。

输入您要使用的管理员密码,phpIPAM界面的描述性标题,以及指向您的phpIPAM安装的完全限定域名,然后按“保存设置”按钮。

设置

您现在应该看到一条确认消息,告诉您设置已成功保存。如果没有,请使用向导的错误消息来诊断问题。

确认

单击继续登录按钮转到phpIPAM安装的主页,然后使用您在管理员密码字段中输入的管理员用户名和密码登录。phpIPAM安装和配置现已完成,因此您可以开始添加信息以更轻松地管理您监控的网络。

结论

在本文中,您安装并配置了phpIPAM,一个开源IP地址管理Web应用程序。您现在可以监控自己的基础架构和其他网络中的IP地址使用情况。参阅有关phipIPAM内置API的官方文档,请浏览官方入门教程


参考文献:《How To Install phpIPAM on Ubuntu 16.04》

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Debian 8如何使用Postgresql和Django应用程序

    Django是一个用于快速创建Python应用程序的灵活框架。默认情况下,Django应用程序配置为将数据存储到轻量级SQLite数据库文件中。虽然这在某些负载...

    小翼111
  • 如何在CentOS 7上安装Graylog 1.x.

    在本教程中,我们将介绍如何在CentOS 7上安装Graylog v1.3.x(有时称为Graylog2),并将其配置为在集中位置收集系统的syslog。Gra...

    小翼111
  • 如何在Debian 9上安装带LEMP的WordPress

    WordPress是互联网上最受欢迎的CMS(内容管理系统)。它允许您使用PHP处理在MySQL后端之上轻松设置灵活的博客和网站。WordPress已经看到了令...

    小翼111
  • NumPy中einsum的基本介绍

    einsum函数是NumPy的中最有用的函数之一。由于其强大的表现力和智能循环,它在速度和内存效率方面通常可以超越我们常见的array函数。但缺点是,可能需要一...

    AiTechYun
  • 聊聊关于系统安全的话题

    公司的信息安全体系建设是每个安全从业人员,尤其是安全管理者所绕不过的工作内容;信息安全体系大多可分为信息安全管理体系,信息安全技术体系,以及信息安全运营体系三个...

    FB客服
  • 一张图纵览明御攻防实验室八大革新

    V2.3.0 八大革新 明御攻防实验室|介绍 明御攻防实验室是各行业用于培养信息安全人才的专业性实验室平台,基于国际领先的安恒团队多年的安全研究、攻防最佳实践所...

    安恒信息
  • 点亮你 App 的 5 个 iOS 库

    TVButton 可在 UIButton 控件上重新创建类似于在 Apple TV 上看到的美丽视差效果。长按或拖动即可触发效果。要使用视差效果,您至少需要两/...

    用户2932962
  • Python从入门到摔门(4):Python中 sys.argv[]的用法简明解释

    sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,所以那些试图从代码来说明它作用的解释一直没看明白。因为我们从外部取得的参数可以是...

    Python之道
  • 【学术】神经网络正在学习“记忆”和“忘记”

    记忆是一种珍贵的资源,所以人类已经能够记忆重要的技能,忘记无关紧要的技能。现在机器也被设计成这样。 ? 深度学习正在改变我们使用和思考机器的方式。在各种任务中,...

    AiTechYun
  • Github 项目推荐 | 半自动图像标记工具

    在构建可以从任何场景检测物体的人工智能系统时,我们需要一个庞大的数据集来训练和测试模型,并发现模型的缺点。现有的图像注释工具能够提供一定的帮助,但是开发者仍要付...

    AI研习社

扫码关注云+社区

领取腾讯云代金券