Возможности скрипта на данный момент:
- Считать, сколько раз пользователь посетил страницу, на которой подключён IPFS. На основании полученных данных решать, продолжить ли выполнение страницы, или закрыть доступ.
- Остановить дальнейшую блокировку IP адресов клиентов, но не забывать о заблокированных ранее пользователях
- IPFS хранит всю информацию о клиенте в базе данных MySQL
Будет введено в следующих версиях:
- Режим работы по Whitelist
- Хранение данных в файлах
- Возможность давать скрипту команды по GET-запросам. (Заблокировать, разблокировать конкретный айпи, изменить настройки)
- Говнокод будет приведён в порядок, и всё будет работать быстро
- Возможность включить кодирование адресов
- Будет добавлена возможность установки (с созданием таблиц, генерацией необходимых паролей (в будущем) ).
- И много-много других возможностей. Предлагайте свои в комментариях.
Текущая версия: 1.0-a
Установка:
1. Перенести все файлы с префиксом "ipfs_" на веб-сервер.
2. Настроить ipfs_config.php в соответствии со своими предпочтениями.
3. Указать там же данные для входа в базу данных
4. Выполнить SQL запрос:
SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
CREATE TABLE IF NOT EXISTS `ipfs_data` (
`ip` char(15) COLLATE utf8_unicode_ci NOT NULL,
`total` int(7) unsigned NOT NULL DEFAULT '1',
`blocked` tinyint(1) unsigned NOT NULL DEFAULT '0',
`whitelisted` tinyint(1) unsigned NOT NULL DEFAULT '0'
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
4. Заинклудить ipfs_core.php в начале страницы (после мета тегов), которую Вы хотите защитить IPFS.