分享

IP管理系统

 新用户6778uM85 2024-02-06 发布于上海

一、前言:

对于运维管理人员,ip地址进行管理很重要,很多公司都是采用电子文档的形式,以手工更新为主,对ip地址和子网的实际使用情况无法进行有效的实时监控和统计,随着网络变得越来越大,ip设备越来越多,手工IP地址管理将会成为网络管理和扩展的瓶颈。

二软件介绍:

    phpIPAM是一个开源的Web IP地址管理应用程序(IPAM)。其目标是提供轻松,现代和有用的IP地址管理。它是基于php的应用程序,带有MySQL数据库后端,使用jQuery库,ajax和HTML5 / CSS3功能。

图片

三、搭建系统:

 官方安装教程指南链接:

https:///documents/installation/

https:///news/phpipam-installation-on-centos-7/

一、设置系统环境和安装依赖包

1、禁用SELINUX,并重启服务器

sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config && reboot

2、关闭防火墙

systemctl stop firewalld

3、更换阿里云

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

4、安装依赖包

yum install wget vim net-tools httpd mariadb-server php php-cli php-gd php-common php-ldap php-pdo php-pear php-snmp php-xml php-mysql php-mbstring git -y
#如果您需要API的crypt方法,您还需要安装php-mcrypt php扩展yum install epel-release -yyum -y install php-mcrypt
# centos7版本好坑,PHP、mariadb版本都低需要升级yum install -y MariaDB-serveryum install wget vim net-tools httpd -y git

5、设置区域设置(可选)

首先,让我们设置要在服务器上使用的正确区域设置,它们也是翻译所必需的。将以下内容添加到文件/etc/environment对于en_US编码,如果您要使用不同的编码,请添加您的编码:

[root@localhost ~]# more /etc/environment
LC_ALL=en_US.utf-8
LANG=en_US.utf-8

二、配置和运行 Apache

1、修改apache配置文件/etc/httpd/conf/httpd.conf,主要是修改以下两个地方

vim /etc/httpd/conf/httpd.conf
ServerName localhost:80
<Directory '/var/www/html'> #修改目录设置以允许mod_rewrite URL重写 Options FollowSymLinks AllowOverride all Order allow,deny Allow from all #Require all granted</Directory>

2、检查配置文件,显示 OK 状态为正常

httpd -t -f /etc/httpd/conf/httpd.conf

3、修改/etc/php.ini配置文件的时区为Asia/Shanghai

vim /etc/php.ini
date.timezone = Asia/Shanghai

4、启动httpd并配置开机启动

#开机启动Apachesystemctl enable httpd#启动Apachesystemctl start httpd

#其他方法现在启动apache服务器,并确保它在引导时启动:sudo service httpd startsudo chkconfig httpd on

5、如果需要,使用以下命令将http/https流量从外部接口传递到web服务器也需要防火墙规则(可选):

sudo firewall-cmd --permanent --add-port=80/tcpsudo firewall-cmd --permanent --add-port=443/tcpsudo firewall-cmd --reload

三、初始化配置mariaDB

①启动mariadb数据库

  1. #启动mariadb

  2. systemctl start mariadb

  3. #开机启动mariadb

  4. systemctl enable mariadb

其他方法:sudo service mariadb startsudo chkconfig mariadb on

②初始化mariaDB,配置好密码

mysql_secure_installation
# 从10.5.2开始已经由mariadb-secure-installation命令替换mariadb-secure-installation

图片

图片

四、下载和配置phpipam

①下载phpipam文件代码到/var/www/html

cd /var/www/html/git clone https://github.com/phpipam/phpipam.git .git checkout 1.6
git clone https://github.com/phpipam/phpipam.git /var/www/phpipam/cd /var/www/phpipamgit checkout 1.6git submodule update --init --recursive#这将把当前代码下载到/var/www/中的phpipam目录。为此,我们还需要安装子模块

图片

②文件权限配置

sudo chown apache:apache -R /var/www/html/sudo chcon -t httpd_sys_content_t /var/www/html/ –R #报错
cd /var/www/html/find . -type f -exec chmod 0644 {} \;find . -type d -exec chmod 0755 {} \;
sudo chcon -t httpd_sys_rw_content_t app/admin/import-export/upload/ -R #报错sudo chcon -t httpd_sys_rw_content_t app/subnets/import-subnet/upload/ -R #报错sudo chcon -t httpd_sys_rw_content_t css/1.6.0/images/logo/ -R #报错

③拷贝必要文件到相关目录

cp /var/www/html/config.dist.php /var/www/html/config.dist.php.bakmv /var/www/html/config.dist.php /var/www/html/config.php

④编辑/var/www/html/config.php文件(不用改)

vim /var/www/html/config.php
define('BASE', '/phpipam'); #修改这行
See http://phbase connection details ******************************/$db['host'] = 'localhost';$db['user'] = 'phpipam_user';$db['pass'] = 'phpipam_Pass';$db['name'] = 'phpipam_db';$db['port'] = 3306;##/**

⑤重启httpd服务

systemctl restart httpd

5、配置phpipam

打开地址:http://服务器IP/phpipam
①选择新的phpipam安装

图片

② 安装pfpipam数据库

图片

③设置数据库

图片

图片

④填写系统初始化信息

图片

图片

⑤登录系统

图片

图片

四、使用教程:

登录成功后会自动跳转到主界面

图片

②修改 admin 语言,改成中文(如图操作),修改后需要退出重新登陆

图片

图片

图片

③子网创建(添加),默认会自带一些测试子网,可以手动删除

图片

图片

图片

图片

④子网页面预览

图片

⑤选中对应的 IP 可以进行编辑

图片

要启用网络扫描,我们有两个选项:禁用SELinux或为其创建策略。建议创建SELinux策略,请阅读话题。现在我们将通过输入以下命令禁用SELinuxsetenforce 0命令:

[root@localhost html]# getenforceEnforcing[root@localhost html]# setenforce 0[root@localhost html]# getenforcePermissive[root@localhost html]#

这将启用从web、发现等进行icmp检查。要同时扫描网络并定期检查地址状态,请阅读

从0.9版开始,有一个选项可以自动检查选定子网的已配置主机的状态,并发现新主机。我收到了一些相关的问题,所以这里有一个简短的描述和指南。

首先,建议pcntl支持php cli,这样phpipam可以进行并行icmp检查,这大大减少了检查状态所需的时间。您可以使用以下命令检查您的安装是否正常:

php -m | grep pcntl

1.)配置pinging的参数

在管理》IPAM设置(Ping状态间隔)下设置状态的时间参数,phpipam将根据这些值将主机设置为关闭/启动。此外,设置正确的icmp参数和路径。

2.)选择检查哪些网络

现在您必须选择哪些子网应该扫描已配置主机的状态。

转到编辑子网并选中“检查主机状态”。这将告诉cron脚本检查该子网内主机的状态。“发现新主机”将尝试为该子网寻找新主机,并将它们自动添加到phpipam数据库中。

图片

3.)添加cron脚本

每15分钟检查一次:

自动扫描yum install fpingsetcap 'CAP_NET_RAW+ep' /usr/sbin/fping    #有一步是给 fping读网卡的权限
crontab -e*/15 * * * * /usr/bin/php /var/www/html/functions/scripts/pingCheck.php >> /dev/null 2>&1*/15 * * * * /usr/bin/php /var/www/html/functions/scripts/discoveryCheck.php >> /dev/null 2>&1
crontab -l

# 官方

# update host statuses exery 15 minutes

*/15 * * * * /usr/local/bin/php /usr/local/www/phpipam/functions/scripts/pingCheck.php
*/15 * * * * /usr/local/bin/php /usr/local/www/phpipam/functions/scripts/discoveryCheck.php

当然,根据您的安装更改路径🙂

附:icmp检查的SElinux策略

许多关于扫描子网和更新主机状态的问题都与SElinux的启用有关。到目前为止,解决方案是完全禁用SElinux,但这比其他任何方法都更适合。Robert好心地分享了SElinux策略,如果您的服务器上启用了SElinux,那么phpipam应该使用SElinux策略。

基本上,它允许为非根用户打开执行ping命令所需的原始IP套接字。

1)创建文件http_ping.tt并向其中添加以下内容:

module http_ping 1.0;

require {
type httpd_t;
class capability net_raw;
class rawip_socket { getopt create setopt write read };
}

#============= httpd_t ==============
allow httpd_t self:capability net_raw;
allow httpd_t self:rawip_socket { getopt create setopt write read };

2)运行以下命令(作为root用户):

checkmodule -M -m -o http_ping.mod http_ping.tt
semodule_package -o http_ping.pp -m http_ping.mod
semodule -i http_ping.pp

这也有助于检查状态,setenforce 0:

[root@ipam selinux]# getenforce
Enforcing
[root@ipam selinux]# setenforce 0
[root@ipam selinux]# getenforce
Permissive
[root@ipam selinux]#

然后添加正确的ping权限

[root@ipam selinux]# ls -ls `which fping`
88 -rwxr-xr-x. 1 root root 89927 Apr  3 17:11 /usr/local/sbin/fping
[root@ipam selinux]# chmod 4755 /usr/local/sbin/fping
[root@ipam selinux]# ls -ls `which fping`
88 -rwsr-xr-x. 1 root root 89927 Apr  3 17:11 /usr/local/sbin/fping
[root@ipam selinux]#

brm

fping软件配置:

检查你的系统中有没有fping这个软件

[root@web phpipam.t.com]# fping -vfping: Version 3.10fping: comments to david@schweikert.ch

如果没有,请通过以下命令安装:

[root@web phpipam.t.com]# yum install fping -y

机柜乱码问题

在win系统下复制字体文件

图片

到/var/www/html/css/fonts 

直接将字体文件改名为:

MesloLGS-Regular.ttf

或修改文件/var/www/html/functions/classes/class.Rackspace.php,找到“private function imageCenterString”这个php function,修改ttf字体为文件名

图片

机柜正反面由字母替换为中文汉字方法

找到“public function draw_rack”,“[F]”替换为“[正面]”,“[R]”替换为“[背面]”

图片

下图中,第一个字体是机柜U数那个数字用的字体,不用改,即“MesloLGS-Regular.ttf”;第二个字体改成“HarmonyOS_Sans_SC_Regular.ttf”,自己保存退出后,刷新网页试试效果就知道用途了!图片

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多