httpd(2).conf нужно.
Оттюньте nginx. Заведите зоны:
nginx.conf
#зона “one” размером 10 мегабайт, со средней скоростью запросов 300 в секундуlimit_req_zone $binary_remote_addr zone=one:10m rate=300r/s;#зона “two” размером 10 мегабайт, со средней скоростью запросов 2 в секундуlimit_req_zone $binary_remote_addr zone=two:10m rate=2r/s;#Зона three, количество соединений с одного IP-адресаlimit_conn_zone $binary_remote_addr zone=three:10m;
vhosts.conf (или где у вас виртуальные хосты)
В корневом локейшне
limit_req zone=two burst=15 nodelay;limit_conn three 8;
В локейшне на статику
limit_req zone=one burst=200 nodelay;
Вдобавок, теперь вы можете парсить лог, вылавливать блокированных и впендюривать их в таблицу фаервола.
Если у сканера есть специфический юзерагент, можете перенаправить его ему же в задницу:
if ( $http_user_agent ~* (OpenLinkProfiler.org|BLEXBot|WebIndex) ){ rewrite ^(.*)$ http://localhost/ permanent; }
Сядьте верхом на табуретку, зацените.
Советовался с врачом, лечившим мою спину. Забраковал.
Куда вы всё альфа-бета версии ставите?
Короче, у вас изврат :)
Правильно так: локалка, на входе роутер.
Вариант 1:
На роутере L2TP/IPSEC сервер (пример: mpd5 под FreeBSD).
Вот для OpenWRT
Скоро придут Микротики, посмотрю, умеют ли.
Можете попробовать сделать L2TP сервер из Windows, я не пробовал и не буду.
Клиент подключается и авторизуется стандартными средствами Windows (подключение к защищёной сети).
Примерно такая красота:
или такая для NT5.x:
Для NT6.x:
После подключения он получает внутренний IP в вашей сетке.
На компьтере с даными расшаривается диреткория, она становится доступной любому, кто в локалке, в том числе, и нашему внешнему пользователю.
Вариант 2.
На роутере SSH сервер (SSHD).
Клиент поднимает туннель и по нему так же заходит во внутреннюю сетку. Тут надо помудрить с соксированием нужных портов, чтобы всё приходило куда нужно.
Вариант 3.
На роутере OpenVPN сервер.
Решение широко применяется но я не использую, т.к испытываю отвращение со времён спутникового интернета.
Достоинство этих способов в том, что соединение получается зашифрованным и соответствует канонам безопасности.
Просится какая-нибудь VCS, например, Subversion.
Может, не мудрить с подключениями к компьютеру, а создать репозиторий в интернете, и пусть работают?
Вы всегда сможете обновить файлы как в одну, так и в другую сторону, рабочая копия всегда при вас. Можно откатиться на любую дату. Это самый правильный вариант.
Но это будет не блокировка файлов, а разрешение конфликтов, т.е. слияние правок.
Блокировки (lock) поддерживают совсем допотопные VCS.
Хотя можно и на компьютере сервер SVN поднять, те же яйца.
Значит, если по-правильному, официальным тоном объявить сайт, предупредить о сроке после которого вопрос будет решаться правовым путём, и начать воплощать этот вариант.
По-крайней мере адекватный человек должен как-то отреагировать на такое дело.
Учитывая то, что у нас страна особая, и оппонент может быть отмороженным, могут быть иные пути…
Что отвечает на предложение решить вопрос миром?
Так была задача поставлена. Деплой на веб-сервер, у которого доступен только FTP.
Связка оказалась неработоспособна. Переделал под lftp, стало куда веселее. И полноценная синхронизация, хотя несколько иная, нежели rsync.
Да, туннели мне тоже нравятся. Я по ним за NATы хожу (задом наперёд), а дальше что угодно. Видео с камеры наблюдения в своём плеере на десктопе, Windows шары через NetBIOS (каких-то 4 порта надо соксировать, не помню уже).
Ну а всё-таки, в нормальных условиях, на толстом канале, большой файл.
FTP проще, без шифрования. Ну должен же быть быстрее :)