1. 介绍
随着网络规模增大,单纯依附Excel等电子表格已难以无效进行网络管理。存在以下问题:
- 无奈对填写信息的正确与否进行校验
- 不足网络资源可视化治理
- 异地治理艰难
- 多人保护时,存在版本问题
在参考Kenelite的IPAM随笔、维基百科-对于IPAM介绍后,开始了phpIPAM的装置应用。phpipam官网介绍有以下个性:
其中IP地址扫描、IP资源信息属性可配置、VLAN及子网治理以及用户权限的治理性能根本满足需要,要是带有OpUtils交换机端口映射治理性能就更好了!
2. 装置配置
2.1装置apache,mysql,php
#以下为官网教程的必要安装包ipam@ubuntu:/$ sudo apt-get install apache2ipam@ubuntu:~$ sudo apt-get install mariadb-serveripam@ubuntu:~$ sudo apt-get install php ipam@ubuntu:~$ sudo apt-get install php7.4-pearipam@ubuntu:~$ sudo apt-get install php7.4-gmpipam@ubuntu:~$ sudo apt-get install php7.4-mysqlipam@ubuntu:~$ sudo apt-get install php7.4-mbstringipam@ubuntu:~$ sudo apt-get install php7.4-gd#mcrypt为php加密反对扩大库,从 php 7.1.0 曾经将此扩大移除到PECL,须要手动装置,此处未进行装置ipam@ubuntu:~$ sudo apt-get install php7.4-curlipam@ubuntu:~$ sudo apt-get install git #以下为官网教程外的php扩大库#snmp扩大库为phpipam snmp功能模块的必要扩大库,倡议装置,其余本人看着办ipam@ubuntu:~$ sudo apt-get install php7.4-snmpipam@ubuntu:~$ sudo apt-get install php7.4-fpm php7.4-sqlite3 php7.4-gd php7.4-odbc php7.4-sybase php7.4-gmp php7.4-opcache php7.4-tidy php7.4-cli php7.4-imap php7.4-pgsql php7.4-xml php7.4-common php7.4-interbase php7.4-phpdbg php7.4-xmlrpc php7.4-intl php7.4-pspell php7.4-xsl php7.4-dba php7.4-json php7.4-readline php7.4-zip php7.4-dev php7.4-ldap php7.4-snmp php7.4-enchant php7.4-soap#
2.2下载安装phpipam
办法一:通过git下载
ipam@ubuntu:/$ cd /var/www/ipam@ubuntu:/var/www$ sudo mkdir phpipamipam@ubuntu:/var/www/phpipam$ sudo git clone https://github.com/phpipam/phpipam.git .正克隆到 '.'...remote: Enumerating objects: 18, done.remote: Counting objects: 100% (18/18), done.remote: Compressing objects: 100% (15/15), done.remote: Total 26844 (delta 2), reused 8 (delta 2), pack-reused 26826接管对象中: 100% (26844/26844), 19.15 MiB | 120.00 KiB/s, 实现.解决 delta 中: 100% (19681/19681), 实现.
办法二:自行下载安装包进行部署
ipam@ubuntu:~/Downloads$ sudo cp phpipam-v1.4.2.tgz /var/www/ipam@ubuntu:~/Downloads$ cd /var/www/ipam@ubuntu:/var/www$ sudo tar -xvf phpipam-v1.4.2.tgz
2.3配置apache、mysql
2.3.1批改apache对于phpipam目录的拜访配置
相干配置在/etc/apache2/apache2.conf
。其中,
Directory
是该配置将被利用的地位,此处为phpipam的目录。Options FollowSymLinks
为默认设置。AllowOverride all
示意.htaccess文件
此目录的任何配置override对应的全局配置。Require all granted
容许来自所有主机的传入申请。
ipam@ubuntu:/var/www/phpipam$ cd /etc/apache2/ipam@ubuntu:/etc/apache2$ sudo vim apache2.conf #减少/var/www/phpipam目录的设置<Directory /var/www/phpipam> Options Indexes FollowSymLinks AllowOverride all Require all granted</Directory>
查看apache2.conf
文件,能够晓得apache对配置文件加载程序,因而对 /var/www/phpipam
目录的配置也能够放在sites-enabled/000-default.conf
。当然查看一下这个文件,能够得悉其实是援用了sites-available/000-default.conf
。
# /etc/apache2/# |-- apache2.conf# | `-- ports.conf# |-- mods-enabled# | |-- *.load# | `-- *.conf# |-- conf-enabled# | `-- *.conf# `-- sites-enabled# `-- *.conf
2.3.2批改php.ini文件的时区设置
设置文件位于/etc/php/7.4/apache2/php.ini
,批改后保留敞开即可。
ipam@ubuntu:/var/www/phpipam$ grep timezone /etc/php/7.4/apache2/php.ini ; Defines the default timezone used by the date functions; http://php.net/date.timezone;date.timezone =ipam@ubuntu:/var/www/phpipam$ sudo vim /etc/php/7.4/apache2/php.ini [Date]; Defines the default timezone used by the date functions; http://php.net/date.timezonedate.timezone = Asia/Shanghai
2.3.3启用url_rewrite模块
phpipam通过apache的mod_rewrite模块来实现url重写,该模块将查问的字符串转换成更具可读性的url。
ipam@ubuntu:/var/www/phpipam$ sudo a2enmod rewrite
此命令在/etc/apache2/mods-enabled/rewrite/
中创立指向/etc/apache2/mods-available/rewrite.load
的符号链接,在apache重启后启用该模块。
2.3.4 批改http协定端口
apache http默认应用的是80端口,失常状况下apache能够拜访。但因为集体应用VMware部署的ubuntu,通过netstat -a
发现80端口已被占用。因而须要进行批改。须要批改/etc/apache2/ports.conf
#此处80批改为新的端口Listen 80
以及/etc/apache2/sites-available/000-default.conf
#此处80批改为新的端口<VirtualHost *:80>
2.3.5 重启apache2
ipam@ubuntu:/$ sudo apache2ctl configtest #测试apache的配置是否存在语法上问题,失常显示syntax OKipam@ubuntu:/$ sudo systemctl restart apache2
2.3.6配置mysql root用户明码
首次部署mysql时,root用户设置了随机明码。查看debian.cnf
发现明码是暗藏的。
ipam@ubuntu:/etc/mysql$ sudo cat /etc/mysql/debian.cnf # Automatically generated for Debian scripts. DO NOT TOUCH![client]host = localhostuser = rootpassword = socket = /var/run/mysqld/mysqld.sock[mysql_upgrade]host = localhostuser = rootpassword = socket = /var/run/mysqld/mysqld.sock
能够通过以下命令进行批改。
ipam@ubuntu:/etc/mysql$ sudo mysqlMariaDB [(none)]> show databases;MariaDB [(none)]> use mysql;MariaDB [mysql]> select user,host ,plugin,authentication_string FROM user;MariaDB [mysql]> UPDATE user SET plugin="mysql_native_password", authentication_string=PASSWORD("phpipam") WHERE user="root";#将mysql root用户明码设置为phpipamMariaDB [mysql]> flush privileges;MariaDB [mysql]> exit;
重启mysql服务。
ipam@ubuntu:/$ sudo systemctl restart mysql
2.4部署phpipam
2.4.1批改phpipam配置文件
phpipam的次要配置设置寄存在config.php
中,尽管默认状况下此文件并不存在,但安装包中附带了一个示例配置文件config.dist.php
。因而能够创立该文件的正本,并加以批改应用。
ipam@ubuntu:/$ cd /var/www/phpipamipam@ubuntu:/var/www/phpipam$ cp config.dist.php config.php
查看config.php
文件对于数据库连贯局部内容,phpipam在部署过程中会在本机localhost
上创立名为phpipam
的数据库,用户及明码也进行设定。侦听端口为mysql的默认值TCP3306。依据须要自行批改,实现编辑后保留并敞开文件。
/** * database connection details ******************************/$db['host'] = 'localhost';$db['user'] = 'phpipam';$db['pass'] = 'phpipamadmin';$db['name'] = 'phpipam';$db['port'] = 3306;
2.4.2装置phpipam
这一过程包含为phpipam创立mysql数据库以及用户,web设置管理员用户账号。网页登录http://127.0.0.1:80
,即可看到phpipam装置向导界面。
包含三个选项:New phpipam installation、Migrate phpipam installation、Working installation。因为是新的phpipam装置,因而抉择New phpipam installation,下个向导页包含三个选项:
- Automatic database installation:主动数据库装置,向导将应用config.php中设置的信息来创立mysql数据库及用户。
- MySQL import instructions:mysql导入阐明,将应用mysql import工具从提供的文本创立数据库。
- Manual database installation:手动装置数据库,即应用命令行装置。
抉择Automatic database installation
即可。后续向导页为创立数据库及用户,因为须要足够权限的用户数据登录凭据,可抉择应用root用户。
其中Show advanced options
为高级选项。之后的装置过程按向导进行设置即可。
3.参考文献
1.phpipam官网
2.Kenelite IPAM随笔
3.小翼111 如何在Ubuntu 16.04上装置phpIPAM
4.大专栏 IP地址治理(IPAM)
5.体验盒子 phpIPAM – 收费开源的IP地址管理工具,重量级