Сегодня я хочу поделиться с вами тем, что мне показалось очень полезным.
Помечаем заблокированные IP-адреса fail2ban страной к которой он принадлежит, в параметре fail2ban Banned IP Issabel PBX
Сначала мы загрузим сам файл
geoiploc.php
в консоле вводим и переходим в папку
cd /var/www/html/modules/sec_fb_banned/
скачиваем сам файл
wget www.chir.ag/projects/geoiploc/autogen/geoiploc.tar.gz
затем распаковываем его
tar xvf geoiploc.tar.gz
Теперь мы изменяем файл, который находится в той же папке index.php
mcedit index.php
Ищем строку:
$oGrid->setURL($url);
под этой строкой вставляем (подключаем только что распакованную папку)
include("geoiploc.php");
Затем ищем
$arrColumns = array($button_eliminar,tr("Jail"),tr("IP"));
И меняем его на:
$arrColumns = array($button_eliminar,tr("IP"),tr("Jail"),_tr("Country"));
Здесь мы добавляем Country колонку на и слегка меняем их порядок (IP, цепочка, страна),
Ищем следующее:
if( is_array($arrResult) && $total>0 ){
foreach($arrResult as $key => $value){
$arrTmp[0] = "<input type='checkbox' name='".$value['id']."' id='".$value['id']."'>";
$arrTmp[1] = $value['jail'];
$arrTmp[2] = $value['ip'];
$arrData[] = $arrTmp;
}
}
И меняем его на:
if( is_array($arrResult) && $total>0 ){
foreach($arrResult as $key => $value){
$ip = $value['ip'];
$region = (getCountryFromIP($ip, " NamE"));
$arrTmp[0] = "<input type='checkbox' name='".$value['id']."' id='".$value['id']."'>";
$arrTmp[2] = $value['jail'];
$arrTmp[1] = $value['ip'];
$arrTmp[3] = $region;
$arrData[] = $arrTmp;
}
}
Количество записей отображающихся на текущей странице можно так же поправить тут $limit = 20; где выставляем нужное нам количество записей на одной странице.
Сохраняем и выходим.
Тут описан лишь один из методов отображения страны блокировки.