Сайт | Форум | Лицензия | FAQ | Донейшен |
|
Когда сервер запущен доступны:Пользователи и Виртуальные хосты Текущая статистика (Последняя версия, Форум, и т.д.) Сгрузить Web Mail Внешний скрипт предоставляющий Web интерфейс для работы с почтой Донейшен |
Эта очень небольшая утилита превращает ваш компьютер в полноценный
сервер. Сама программа задействует минимальное количество
системных ресурсов, функционирование сервера не должно сказаться на
производительности вашего компьютера. Сервер может работать в локальной
сети или даже на DialUp-е. Веб-мастера могут запускать эту утилиту даже на
своем локальном компьютере, и не входя в сеть отлаживать CGI-скрипты.
Параметры и коментарии | ключи |
Общие параметры | |
Не показывать иконку в таскбаре. Не добавлять иконку в таскбар. В этом случае, когда окно спрятано, для доступа к диалогу администрирования вы должны: Что бы открыть окно, нажмите Ctrl-Alt-Del, в появившемся таск-менетжере выберите Http, и попробуйте закрыть его. Сервер спросит: "Do you want to close HTTP server?" , Если ответить "Нет", то откроется его окно. В окне сервера вызовите системное меню (Правой кнопка мыши на заголовке) и выберите дополнительный элемент "Server". Если программа запущена как служба NT то окно можно вызвать из менетжера служб, кнопкой Pause | noicon |
Сворачиваться при старте. | hide |
Подробный отчет для POP/SMTP/FTP. Иначе фиксируются только основные события. | detail |
Не сохранять лог. | nolog |
Сохранять лог. Выберите имя лог-файла. | log=name.log |
Новый лог файл каждый день. Это нужно, что бы получать статистику по дням. | logday |
Отдельный лог для каждого сервера | seplog |
Не выводить пользователю поток ошибок (STDERR) поступающий от CGI скриптов | noerrout |
Дублировать поток ошибок (STDERR) от CGI в http.err лог | dupstderr |
Добавлять в лог отладочную информацию от логических выражений в SSI и Antivirus/Forward файлах | dbgle |
Разрешить удаленное администрирование. Иначе, для администраторов будут доступны только страницы статистики. | radmin |
Максимальное количество одновременных подключений с одного и того же хоста. Для снятия ограничений можно использовать 0. Ограничения распространяются на все TCP соединения (HTTP,FTP,POP,SMTP,Proxy) | from_same_host=## |
Не ограничивать количество одновременных подключений с одного хоста. | nofrom_same_host |
Минимальная скорость соединения для обнаружения DoS-атаки большим количеством медленных соединений. (Кбайт/мин). Ноль, чтобы отключить проверку. | dos_protect_speed=value |
Не обрезать строки лога. | nolimitlog |
Ограничить длину строки лога. Длина каждой строки не должна превышать это значение | limitlog=value |
IP адреса, для которых сервер будет доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. Например: 192.168.0.1-192.168.0.16,127.0.0.1 | ip_range={#.#.#.#[-#.#.#.#],} |
Запрещенные IP адреса, для которых сервер будет не доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. Например: 192.168.0.1-192.168.0.16,127.0.0.1 | ip_deny={#.#.#.#[-#.#.#.#],} |
IPv6 с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | ip6_range=value |
Запрещенные IPv6 с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | ip6_deny=value |
Не хранить не криптованные пароли в конфигурационном файле. | cryptpwd |
Удалять пароли из лога | delpwd |
Сохранять пароли как MD5 Digest (RFC2069/RFC2617) | md5pwd |
Realm - строка для MD5 Digest (RFC2069/RFC2617) | md5realm=path |
Использовать MD5 Digest для авторизации, если это возможно (RFC2069/RFC2617) | md5digest |
Использовать пароноидальный вариант MD5 дайжеста для авторизации если это возможно (RFC2617 qop=auth) | md5paranoidal |
IP с которых разрешено администрировать этот сервер. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | adm_range=value |
Запрещенные IPs с которых нельзя администрировать этот сервер. Разделитель запятая, диапазоны IP записываются через дефис. | adm_deny=value |
IPv6 IP с которых разрешено администрировать этот сервер. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | adm6_range=value |
IPv6 Запрещенные IPs с которых нельзя администрировать этот сервер. Разделитель запятая, диапазоны IP записываются через дефис. | adm6_deny=value |
Разрешить две точки в именах файлов (может быть опасно) | twopoint |
Параметры HTTP сервера | |
Запретить HTTP сервер. | nomax |
IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | http_range=value |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | http_deny=value |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | http6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | http6_deny=value |
Привязаться ко всем адаптерам | nohttp_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | http_bind=value |
Также работать через IPv6 | httpipv6 |
Не ограничивать скорость передачи | nohttp_speed |
Предел суммарной скорости передачи данных для всех соединений с одного IP (KБайт/минуту) | http_speed=value |
Количество других активных соединений, для включения ограничения скорости | http_spdusr=value |
PHP. Если вы используйте PHP вы можете указать где находится php-cgi.exe или phpisapi.dll... | php=path |
Запускать PHP как FastCGI. | fcgi_php |
FastCGI идентификатор. Часть URL для выявления FastCGI скриптов. По умолчанию используется ".fcgi" | fcgi_ident=value |
Использовать этот идентификатор группы, для обнаружения FastCGI. Укажите 0 чтобы не использовать такой метод. | fcgi_gid=value |
Использовать UNIX сокет для FastCGI. Иначе использется localhost TCP сокет | fcgi_unix |
Каталог для создания FastCGI UNIX сокетов. May be /tmp, /var/tmp, /dev/shm, ... | fcgi_upath=path |
Отключить общий каталог. | noshare |
Не показывать каталоги. (Только в регистрированой версии) | nooutdir |
Не прерывать исполнение CGI, в случае закрытия соединения | nbrkcgi |
Дополнительные строки управляющего заголовка. | header=value |
Использовать 'chunked' передачу для SSI. | ssi_chunk |
Запретить многопотоковое скачивание. | nomsd |
Использовать gzip сжатие, когда это возможно. | http_gzip |
DLL библиотека ZLib. | gz_lib=path |
Наименьший размер файла, который стоит паковать | gz_low=value |
Не паковать файлы со следующими расширениями | nogz_ext=value |
Файл базы IP адресов для географических дополнений. | ip_base=path |
Добавлять REMOTE_COUNTRY переменную к CGI/SSI окружению | ip_cntr |
Разрешить возвращать информацию о стране по запросу '/$_ip2country_$?ip=x.x.x.x' | ip2cntr_srv |
$_ip2country_$ сервис только для авторизованных пользователей | ip2cntr_aut |
Разрешить DNS через HTTP(S). | http_doh |
Не ограничивать | nohttp_ltime |
Время за которое будет определяться ограничение (в секундах) | http_ltime=value |
Ограничение для IP (Kb) | http_ip_limit=value |
Лимит на сеть (Kb) | http_net_limit=value |
Общий лимит на сервер (Kb) | http_limit=value |
Задержка перед повторной посылкой запроса. В миллисекундах. | dnstimeout=value |
TCP/IP порт для HTTP сервера. Обычно это 80 | port=## |
Сколько HTTP запросов будут обрабатываться одновременно. Около 20Kb памяти будет резервироваться для ждущих нитей. Обычно 5-12 соединений достаточно для 3-8 посетителей в минуту. | max=## |
Имя файла по умолчанию. (Можно использовать шаблон '*'. Например index.* для любого index-а) | def=name.ext |
Файл ошибки. Полный путь к файлу или скрипту возвращаемому при отсудствии запрошенного файла. Для скриптов и SSI переменная QUERY_STRING будет содержать имя запрошенного файла. | error=path\name.ext |
Корневая Web папка по умолчанию. Каталог с которогр будет начинаться ваш сайт. | dir=root_dir_name |
CGI идентификатор. Часть URL для определения CGI. По умолчанию это \"\\cgi-bin\\\", но можно использовать, например, \"\\cgi-\", \"\\local-bin\\\", \".cgi\", и т.д. | cgi_ident="\cgi-bin\" |
PERL интерпретатор. Интерпретатор для скриптов с расширением .pl | perl=path\name.exe |
Разделяемый каталог. Если вы хотите что бы для всех CGI был один и тот же каталог запуска, укажите его здесь. Иначе каталогом запуска, будет каталог самого скрипта. | share=path |
Разрешить обрабатывать Server Side Includes (SSI) в HTML файлах. По умолчанию сервер проверяет SSI только в .sht*,.sml*,.asp* файлах. Предостережение: Обработка SSI требует больше памяти и это медленнее | ssihtm |
Отменяет предыдущий ключ. | nossihtm |
Предельное количество байт принимаемое по методу POST. Не указывайте большие значения т.к. это даст хакерам возможность серьезно загрузить вашу сеть, и затребовать много памяти | post_limit=## |
Никогда не запускать .htm,.gif,.jpg файлы. Иначе, сервер пытается запустить любой файл с CGI идентификатором. | norunhtm |
Максимальное время на выполнение CGI В секундах. | cgi_timeout=## |
ext=".ext;application;.ext;application;..." | |
mime=".ext1;mime-type1;.ext2;mime-type2;...;.extN;mime-typeN" | |
hostpath="hostname;path" Ключ может повторятся много раз. | |
Параметры Proxy сервера | |
Запретить HTTP proxy. | noproxy |
TCP/IP порт для proxy сервера. | proxy=#port |
Сколько proxy запросов будут обрабатываться одновременно. | proxy_max=#max |
IP адреса, для которых сервер будет доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. | proxy_range={#.#.#.#[-#.#.#.#],} |
Запрещенные IP адреса, для которых сервер будет не доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. Например: 192.168.0.1-192.168.0.16,127.0.0.1 | proxy_deny={#.#.#.#[-#.#.#.#],} |
Запретить кэш на жестком диске. | noproxy_dir |
Каталог для сохранения кеша. | proxy_dir=path |
Сколько дней должны храниться данные в кэше. Proxy может загруженные файлы из кэша по прошествии указанного количества дней поле загрузки. В любом случае если юзер использует кнопку "Reload" файл перегружаетя. | proxy_time=#days |
Игнорировать NO-CACHE в управляющих заголовках страниц. | ignocache |
Proxy только для авторизованых пользователей. | proxyusers |
Запретить прокси сервер. | noproxy_max |
Привязаться ко всем адаптерам | noproxy_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | proxy_bind=value |
Также работать через IPv6 | proxyipv6 |
Не сохранять большие файлы. Предел в байтах | proxy_fsize=value |
Отсчитывать дни от последнего доступа. | proxy_laccess |
Не кэшировать страницы если в запросе есть куки. | proxy_hrd |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | proxy6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | proxy6_deny=value |
Не ограничивать скорость передачи | noproxy_speed |
Предел суммарной скорости передачи данных для всех соединений с одного IP (KБайт/минуту) | proxy_speed=value |
Количество других активных соединений, для включения ограничения скорости | proxy_spdusr=value |
Большой режим. Огромное количество трафика должно храниться. | proxy_big |
Еще больший режим. Новый вариант организации хранилища, для уменьшения времени поиска среди большого числа файлов. | proxy_sbig |
Число попыток докачать файл после разрыва соединения | proxy_tryes=value |
Ограничение на одновременные запросы с одного хоста к одной и той же URL. Ноль -- без ограничений. | proxy_same=value |
Не используйте прокси-сервер верхнего уровня. | noupproxy |
Прокси-сервер верхнего уровня. | upproxy=value |
TCP/IP порт прокси-сервера верхнего уровня. | upproxy_port=value |
Прокси сервер верхнего уровня без авторизации. | noup_user |
user:pasword для прокси сервера верхнего уровня. | up_user=value |
Для POP3/SMTP/FTP прокси, соединяться через HTTPS прокси верхнего уровня. | ever_upproxy |
Не использовать прокси верхнего уровня для следующих хостов | nouphosts=value |
Запрещенные хосты | bad_hosts=value |
Таймаут простоя для прокси (в секундах). | proxy_timeout=value |
Запрашивать упакованые gzip-ом, и распаковывать если браузер не поддерживает этого. | proxy_gzip |
Не использовать антивирус. | noproxy_antivirus |
Хост антивируса. (127.0.0.1 для локального PC) | proxy_antivirus=path |
Порт антивируса | proxy_avport=value |
Проверять и HTML файлы. (Иначе проверятся будут только приложения) | proxy_avhtml |
Проверять все файлы. (Иначе проверятся будут только приложения) | proxy_avall |
Не ограничивать | noproxy_ltime |
Время за которое будет определяться ограничение (в секундах) | proxy_ltime=value |
Ограничение для IP (Kb) | proxy_ip_limit=value |
Лимит на сеть (Kb) | proxy_net_limit=value |
Общий лимит на сервер (Kb) | proxy_limit=value |
Параметры DNS сервера | |
Hosts file. See also format of this file | hosts=hosts_file |
Запретить DNS сервер | nohosts |
Привязаться ко всем адаптерам | nodns_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | dns_bind=value |
Также работать через IPv6 | dnsipv6 |
IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | dns_range=value |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | dns_deny=value |
Разрешить DNS по TCP. | dnstcp |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | dns6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | dns6_deny=value |
Не сохранять кеш имен при выходе. | nodnscachefile |
Имя файла кеша имен. | dnscachefile=path |
Не пытаться рекурсивно искать AAAA записи. (для сетей не использующих Интернет через IPv6) | dnsno6 |
Запретить встроенный DNSBL сервер | nodns_bld |
Имя хоста встроенного DNSBL сервера | dns_bld=value |
Детектировать DoS запросы. Чиcло похожих на DoS запросов для блокировки IP | dns_detect_dos=value |
Список имен-хостов используемых при DoS атаках, через пробел. | dns_dos_hosts=value |
Запретить рекурсию. | noreqursion |
Рекурсивные вызовы всегда начинать с двух первых рут серверов. (Если вы используйте DNS сервера вашего провайдера вместо настоящих рут серверов) | dnsupl |
Размер DNS кэша (в записях). | dnscache=value |
Параметры FTP сервера | |
Запретить FTP сервер. | noftp_max |
Привязаться ко всем адаптерам | noftp_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | ftp_bind=value |
Также работать через IPv6 | ftpipv6 |
IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | ftp_range=value |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | ftp_deny=value |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | ftp6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | ftp6_deny=value |
Не ограничивать скорость передачи | noftp_speed |
Предел суммарной скорости передачи данных для всех соединений с одного IP (KБайт/минуту) | ftp_speed=value |
Количество других активных соединений, для включения ограничения скорости | ftp_spdusr=value |
Для соединения данных в пассивном режиме использовать любой свободный порт. | noftp_pasvp |
Первый порт для соединения данных в пассивном режиме. ( Диапазон используемых портов будет от этого порта до этого + число одновременных FTP соединений) | ftp_pasvp=value |
Запретить несколько потоков для одного IP | ftp_oone |
Преобразовывать имена с пробелами. | ftp_wospace |
Не использовать каталог для загрузок. | noftp_upload |
Разрешать FTP PORT команду только на клиентский хост. При этом режим FTP на FTP может не работать. | ftp_same |
Разрешать FTP proxy. | ftp_proxy |
Не ограничивать | noftpi_ltime |
Время за которое будет определяться ограничение (в секундах) | ftpi_ltime=value |
Ограничение для IP (Kb) | ftpi_ip_limit=value |
Лимит на сеть (Kb) | ftpi_net_limit=value |
Общий лимит на сервер (Kb) | ftpi_limit=value |
Не ограничивать | noftpo_ltime |
Время за которое будет определяться ограничение (в секундах) | ftpo_ltime=value |
Ограничение для IP (Kb) | ftpo_ip_limit=value |
Лимит на сеть (Kb) | ftpo_net_limit=value |
Общий лимит на сервер (Kb) | ftpo_limit=value |
Всегда спрашивать пароль, даже для пользователя без пароля. | ftp_always_pass |
Сколько FTP запросов будут обрабатываться одновременно. | ftp_max=max |
TCP/IP порт для FTP сервера. Обычно это 21 | ftp_port=port |
Таймаут по бездействию в секундах. По прошествии этого времени, после последней операции, соединение будет закрыто. | ftp_timeout=#N |
Имя для загрузок. Если FTP каталог содержит такой подкаталог то пользователи с доступом только для чтения могут загружать туда файлы. | ftp_upload="/dir/" |
Разрешить виртуальные директории для FTP. | ftp_vdirs |
Параметры POP3 сервера | |
Сколько запросов будут обрабатываться одновременно. | pop3_max=max |
TCP/IP порт для POP3 сервера. Обычно это 110 | pop_port=port |
Запретить POP3 сервер. | nopop3_max |
POP3/SMTP таймаут по бездействию в секундах. По прошествии этого времени, после последней операции, соединение будет закрыто. | pop_timeout=value |
IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | pop_range=value |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | pop_deny=value |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | pop6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | pop6_deny=value |
Привязаться ко всем адаптерам | nopop_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | pop_bind=value |
Также работать через IPv6 | popipv6 |
Не ограничивать скорость передачи | nopop_speed |
Предел суммарной скорости передачи данных для всех соединений с одного IP (KБайт/минуту) | pop_speed=value |
Количество других активных соединений, для включения ограничения скорости | pop_spdusr=value |
Разрешить POP3 proxy | pop3_proxy |
Разрешить Web mail | wmail |
Не сохранять сообщения отправленные через Web mail в папке пользователя | nowmailsent |
Подкаталог для сохранения отправленных сообщений | wmailsent=value |
Через Web mail удалять сообщения немедленно | nowmailtrash |
Мусорная корзина для перемещения удаляемых сообщений | wmailtrash=value |
Конвертировать страницы в UTF8 | wmail_utf |
Параметры SMTP сервера | |
Запретить SMTP сервер. | nosmtp_max |
Привязаться ко всем адаптерам | nosmtp_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | smtp_bind=value |
Также работать через IPv6 | smtpipv6 |
При отсутствии почтового хоста, попробовать хост | smtp_nomx |
Это нормальный SMTP relay. (Иначе это всего лишь SMTP прокси) | nosmtpproxy |
SMTP верхнего уровня. (режим SMTP прокси) | smtpproxy=value |
Не сохранять отправленные сообщения. | nosmtp_sent |
Сколько дней хранить отправленные сообщения. (Ноль - хранить вечно) | sent_time=value |
IPv6 Наши IP адреса (разрешенный список) На пример ::1,FE80::-FEFF:: | smtp6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | smtp6_deny=value |
Временно добавлять IP в разрешенный список после авторизации по POP3 | smtp_pop_ip |
Ограничить размер сообщения. (в байтах). | smtp_msg_limit=value |
Не прерывать соединение в случае превышения максимального размера. | smtp_nobreak |
Разрешить Generate-Delivery-Report | smtp_conform |
Белый список. Общий файл с допустимыми ш e-mail и IP адресами (шаблонами) отправителей | goodlist=path |
Черный список. Общий файл со спамерскими e-mail и IP адресами (шаблонами) отправителей | badlist=path |
Серый список. Общий файл с e-mail и IP адресами (шаблонами) требующими дополнительную проверку | graylist=path |
Проверять файлы "goodlist", "badlist" и "graylist" в каталоге пользователя перед приемом собщения | chklists |
Текст который будет возвращаться в случае отказа приема сообщения. Здесь также можно указать URL Web формы для прямой отправки сообщения | msgspam=value |
Не использовать скриптов для входящей/исходящей почты | noantivirus |
Антивирусный скрипт. | antivirus=path |
Предел времени на выполнение скрипта. В секундах. | run_timeout=value |
Фильтр разрыва (вырожение). Переменные $msg,$sender,$hello,$control могут проверятся для прекращения приема больших сообщений. | antispam=value |
Фильтр спама (выражение). Переменные $msg,$sender,$hello,$control могут быть проверены и IP может быть добавлен в список спамеров. | spamfltr=value |
Принимать сообщения с неправильным обратным адресом | nocheckback |
Фальшивые e-mail адреса, через запятую. Если кто-то попытается послать сообщение на эти адреса, он будет добавлен в список спамеров | fake=value |
DNSBL сервер. Запрашивать IP у этого внешнего спамерскго списка, перед приемом сообщений. | dnsbl=value |
Перед приемом сообщения проверить почтовый хост отправителя | checkmx |
Игнорировать серый список если сообщение пришло с оригинального почтового домена (DNS MX) | mxignbl |
Как долго спамерские IPs будут активны в спамерском списке (в секундах) | spam_time=value |
Не ограничивать | nosmtp_ltime |
Время за которое будет определяться ограничение (в секундах) | smtp_ltime=value |
Ограничение для IP (Kb) | smtp_ip_limit=value |
Лимит на сеть (Kb) | smtp_net_limit=value |
Общий лимит на сервер (Kb) | smtp_limit=value |
Не ограничивать разрешенные IP | nolimitus |
Принимать сообщения от нашего домена, с чужих IP адресов | uncheckip |
Минимальное время между отправкой сообщений | time_btw=value |
Сколько запросов будут обрабатываться одновременно. | smtp_max=max |
Имя SMTP сервера. (Имя домена) | smtp_name=your.domain.name |
Использовать все виртуальные хосты как синонимы имени домена. | vhalias |
TCP/IP порт для SMTP сервера. Обычно это 25 | smtp_port=port |
Output каталог. Каталог для сохранения сообщений перед отправкой. | smtp_out=path |
Sent каталог. Каталог для сохранения сообщений после отправки. | smtp_sent=path |
Error каталог. Каталог для сохранения сообщений, которые не удалось доставить адресату. | smtp_err=path |
DNS сервер, через который будет искаться информация о почтовом пути. (Это может быть ваш обычный DNS сервер) | smtp_dns=#.#.#.# |
Принимать для отправки сообщения с любым полем "From". Иначе сервер будет отсылать сообщения только от извесный_пользователь@имя.домена | smtp_any |
IP адреса, для которых сервер будет доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. | smtp_range={#.#.#.#[-#.#.#.#],} |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | smtp_deny=value |
Запрещенные IP адреса, для которых сервер будет не доступен. Указывайте IP адреса через запятую и диапазоны младший через дефис старший. Например: 192.168.0.1-192.168.0.16,127.0.0.1 | smtp_deny={#.#.#.#[-#.#.#.#],} |
Черный список. E-mail адреса спамеров через пробел. (Можно *@имя.хоста чтобы запретить принимать сообщения от всех с этого хоста) | blacklist="u@adr1 *@adr2 ..." |
Проверять наличие \"forward\" файла в каталоге пользователя и выполнять инструкции из него. | forward |
Разрешить исполнение приложений из пользовательского \"forward\" файла. | fwdrun |
Использовать TLS при отправке исходящего сообщения, если это возможно | smtptls |
Всегда использовать TLS при отправке исходящих сообщений; если это невозможно, не отправлять | smtponlytls |
Проверьте подпись удаленного сертификата. | smtpchktls |
Параметры DHCP сервера: | |
Запретить DHCP | nodhcp_max |
Общие количество выделяемых IP адресов | dhcp_max=value |
IP адрес DHCP сервера | dhcp_ip=value |
Широковещательный адрес для DHCP ответов | dhcp_bcast=value |
Начальный IP адрес | dhcp_first=value |
Netmask | dhcp_mask=value |
Gateway | dhcp_gate=value |
DNS сервера | dhcp_dns=value |
Имя домена | dhcp_name=value |
Файл сохранения состояния | dhcp_file=path |
DNS должен резолвить имена хостов от выделенных IP адресов | dhcp_rdns |
Только слушать, сохранять хосты для NS. (не отвечать) | dhcp_lo |
Запретить SSL/TLS сервер. | notls_max |
Число одновременно обрабатываемых запросов. | tls_max=value |
TCP/IP порт для SSL/TLS сервера. Обычно 443 | tls_port=value |
Максимальное количество неактивных Keep-Alive соединений waiting | keep_alive_max=value |
Таймаут для неактивных Keep-Alive соединений (в секундах). | keep_alive_timeout=value |
Интервал проверки активности спящего соединения в секундах. 0 – использовать системные настройки по умолчанию. (Поддерживается начиная с Linux 2.4, и Windows 10 v1709) | keep_alive_idle=value |
IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. E.g. 192.168.0.1-192.168.0.16,127.0.0.1 | ssl_range=value |
Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | ssl_deny=value |
IPv6 IP с которых разрешен доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. На пример ::1,FE80::-FEFF:: | ssl6_range=value |
IPv6 Запрещенные IPs с которых нельзя получить доступ к этому серверу. Разделитель запятая, диапазоны IP записываются через дефис. | ssl6_deny=value |
Привязаться ко всем адаптерам | notls_bind |
Привязываться только к перечисленным IP и IPv6. через запятую. (0.0.0.0 - все IP; ::0 все IPv6) | tls_bind=value |
Также работать через IPv6 | tlsipv6 |
Не ограничивать скорость передачи | notls_speed |
Предел суммарной скорости передачи данных для всех соединений с одного IP (KБайт/минуту) | tls_speed=value |
Количество других активных соединений, для включения ограничения скорости | tls_spdusr=value |
Разрешить TLS для POP3/SMTP | smtp_tls |
Разрешить TLS для FTP | ftp_tls |
DLL библиотека TLS/SSL. Например libsec111.dll | tls_lib=path |
Файл сертификата | tls_cert_file=path |
Key file | tls_key_file=path |
CA-Path | tls_capath=path |
CA-file | tls_cafile=path |
Установить приоритете для шифров, метода обмена ключами, и маков
Для GNU TLS и для OpenSSL формат строки различается.
Для OpenSSL посмотреть формат этой строки можно здесь в разделе CIPHER LIST FORMAT
По умолчанию задается такая строка:
"TLS_RSA_WITH_AES_256_CBC_SHA256:TLS_RSA_WITH_AES_128_CBC_SHA:TLS_AES_256_GCM_SHA384: TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256:TLS_AES_128_CCM_SHA256:ECDHE-RSA-AES256-GCM-SHA384: ECDHE-RSA-AES256-SHA:ECDHE-RSA-AES256-SHA384:TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256: TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256:ALL:!DES:!3DES:!RC2"Для GnuTLS посмотреть формат строки можно здесь | tls_priority=value |
Удаленное администрирование только через защищенный HTTPS | admtls |
Web mail только через защищеный HTTPS | tls_wmail |
Отключить TLS VPN | notlsvpn |
Максимальное количество одновременно работающих TLS VPN-подключений. | tlsvpn_max=value |
URL-имя TLS VPN (только локальная часть URL-адреса, например "/$_vpn_$"). HTTPS-запросы к этому URL-адресу будут перенаправлено на VPN | vpn_url=value |
Включить TLS VPN на устройстве Tun | vpntun |
Включить TLS VPN на устройстве Tap | vpntap |
Номер интерфейса Tun | vpn_tun_number=value |
Номер интерфейса Tap | vpn_tap_number=value |
TLS VPN MTU для Tun. | vpn_tun_mtu=value |
TLS VPN MTU для Tap. | vpn_tap_mtu=value |
Путь к Linux устройству настройки | tundev=value |
Доступ без пароля для всех. (В противном случае эту услугу могут использовать только пользователи с доступом к прокси) | vpnpub |
Установить IP-адрес интерфейса Tun | tun_ip=value |
Установить маску подсети для интерфейса Tun | tun_nmask=value |
Установить IP-адрес интерфейса Tap | tap_ip=value |
Установить сетевую маску интерфейса Tap | tap_nmask=value |
Запукать скрипт для инициализации устройства Tun | tun_script_up=path |
Запускать сценарий инициализации для устройства Tap | tap_script_up=path |
Первый IP адрес для выделения удаленному пользователю подключившемуся к Tun. (Опционально) | tun_remote_ip=value |
Общее количество IP-адресов, выделенное для Tun подключений. | tun_remote_max=value |
DNS-сервера, которые будут предлагаться TUN пользователю. (Опционально) | tun_remote_dns=value |
Первый IP адрес для выделения удаленному пользователю подключившемуся к Tap. (Опционально) | tap_remote_ip=value |
Общее количество IP-адресов, выделенное для Tap подключений. | tap_remote_max=value |
DNS сервера, которые будут предлагаться TAP пользователю. (Опционально) | tap_remote_dns=value |
Включить подключение к удаленному хосту TLS VPN | vpnclient |
Имя хоста для подключения к удаленному TLS VPN-серверу | vpn_remote_host=value |
TLS VPN порт. (Обычно 443) | vpn_client_port=value |
TLS VPN URL имя (укажите только локальную часть URL на пример "/$_vpn_$"). Должно быть такой же как на удаленном сервере | vpn_client_url=value |
Имя пользователя TLS VPN | vpn_remote_user=value |
Пароль TLS VPN | vpn_remote_passw=value |
Использовать Tap для подключения. (Иначе Тun) | vpncln_tap |
Номер устройства Tun/Tap клиента TLS VPN | vpn_tuntap_number=value |
TLS VPN MTU для клиента. | vpn_client_mtu=value |
Установить IP-адрес VPN-интерфейса клиента | tuntap_ip=value |
Установить маску сети VPN-интерфейса клиента | tuntap_nmask=value |
Запускать сценарий инициализации, когда VPN-соединение установлено | vpncln_script_up=path |
Запускать сценарий деинициалзации при закрытии VPN-соединения | vpncln_script_down=path |
Проверять удаленный сертификат TLS, на подлинность и соответствие имени хоста | vpncln_chktls |
Не проверять время удаленного сертификата. Игнорировать истекший срок действия. (только GNUTLS) | vpncln_tlsigntime |
Принимать самоподписанные сертификаты. (только GNUTLS) | vpncln_tlsssign |
SSH style of sertificate validate. (GNUTLS only. Public keys of new untracted remote will be stored in ~/.gnutls/known_hosts) | vpncln_tlssshstyle |
user="имя;пароль;домашний_каталог;тип_доступа"
тип_доступа -- это последовательность следующих символов:
Ключ может повторяться несколько раз.
user=anonymous;;c:\public;FWN user=ftp;;c:\readonly;F |
http.exe port=1080 def=index.html php="C:\PROGRAM FILES\PHP\php.exe" nologВот пример конфигурационного файла:
log=c:\temp\http.log perl=c:\Perl\bin\perlis.dll # supported !!! max=12 def=index.stm @www.cfg # include other configuration file hostpath=www.name.www;C:\www1 hostpath=max.name.www;C:\www2 # End of file
HTTP,FTP,POP3,Proxy будут принимать запросы только с IP адресов входящих в список разрешенных и не поподающих в список запрещенных.
SMTP сервер будет принимать письма своего домена (входящие для своих пользователей) с любых адресов, кроме запрещенных. Письма для отправки наружу, он будет принимать только с адресов из разрешенного списка Если вы не хотите принимать письма с какого-то IP -- добавте его в список запрещенных адресов.
DNS сервер также возвращает локальные записи всем желающим, но вот рекурсивный поиск имен делает только для адресов из разрешенного диапазона.
Данная версия сервера поддерживает следующие теги:
include
<!--#include virtual="patch/file_name" -->
<!--#include file="full_patch/file_name" -->
Оба варианта этой директивы включают в документ содержимое файла
file_name. В первом случае документ ищется, начиная с каталога
сервера. Во втором случае, начиная с каталога текущего документа. В
обоих случаях path вообще может быть опущен. Если в результате
подстановки обнаруживается, что запрашиваемый документ находится на
сервере в подкаталоге /CGI-BIN/ то он воспринимается как CGI и
запускается. Выходной поток соответственно транслируется, начало до
последовательности "\r\n\r\n" убирается. При этом если в имени не
содержалось символа '?' то CGI передается исходный запрос, с которым
обратились к родительскому документу. Если обнаружен '?' то дальнейшая
последовательность будет передана как запрос, она должна быть
соответственно преобразована Вами.
exec
<!--#exec cgi="file_name" -->
<!--#exec cmd="full_patch/file_name" -->
Запуск скрипта. Все аналогично include. В первом случае файл
запускается из каталога CGI-BIN, во втором должен быть задан
полный маршрут.
fsize и lastmod
<!--#fsize virtual="patch/file_name" -->
<!--#fsize file="full_patch/file_name" -->
<!--#fsize Kb virtual="path/file_name" -->
<!--#fsize Mb file="full_path/file_name" -->
<!--#lastmod virtual="patch/file_name" -->
<!--#lastmod file="full_patch/file_name" -->
<!--#lastmod format="d.m.Y H:i:s" virtual="path/file_name" -->
<!--#lastmod format="d-m-y h:i:sA" file="full_path/file_name" -->
Подставляет размер или дату последней модификации файла. Размер может быть округленным до Килобайтов или Мегабайтов.
Дата может быть отформатирована по вашему желанию. Определены следующие форматные ключи:
Ключ | Описание | Диапазон |
---|---|---|
d | День месяца, 2 цифры с ведущими нулями | 01–31 |
j | День месяца без ведущих нулей | от 1 до 31 |
m | Числовое представление месяца с ведущими нулями | 01–12 |
n | Числовое представление месяца без ведущих нулей | от 1 до 12 |
Y | Полное числовое представление года, 4 цифры | 1970–9999 |
y | Двузначное представление года | с 00 по 99 |
a | Нижний регистр Ante meridiem и Post meridiem | am или pm |
A | Прописные буквы Ante meridiem и Post meridiem | AM или PM |
g | 12-часовой формат часа без начальных нулей | от 0 до 12 |
G | 24-часовой формат часа без начальных нулей | от 0 до 23 |
h | 12-часовой формат часа с ведущими нулями | 01–12 |
H | 24-часовой формат часа с ведущими нулями | 00–23 |
i | Минуты с ведущими нулями | от 00 до 59 |
s | Секунды с ведущими нулями | от 00 до 59 |
echo
<!--#echo var="var" -->
Выводит значение переменной.
printenv
<!--#printenv -->
Выводит все переменные.
break
<!--#break -->
Вызывает прекращение обработки документа.
if -- elif -- else -- endif
<!--#if expr="выражение" -->
текст
<!--#elif expr="выражение" -->
текст
<!--#elif expr="выражение" -->
текст
...
<!--#else -->
текст
<!--#endif -->
Подстановка по условию. Текст будет передаваться пользователю в зависимости
от истинности условий. Выражение может содержать переменные и значения
разделенные знаками логических операций и скобками:
! -- перед выражением -- простое отрицание
= или == -- равно
!= -- не равно
<,>,<=,>= -- соответственно.
&& между выражениями логическое и.
|| между выражениями логическое или.
str1~str2 -- результат истина, если строка str2 является
частью строки str1.
str1 =~ /pattern/ig -- pattern это регулярное выражение Юникс.
Результат истина, если в строке str1 обнаруживается подстрока
соответствующая шаблону pattern
Если вообще нет никакого знака сравнения, то значение
выражения сравнивается с "undefined".
Части elif и else могут быть пропущены.
Часть elif может повторяться сколько угодно раз.
Обязательно долен быть закрывающий тег endif.
set
<!--#set var="переменная" value="значение" -->
Добавление или изменение значения переменной. Не стоит злоупотреблять этой
опцией, так как и количество переменных которые можно добавить и размер
буфера под них ограничены.
Для анализа входящих переменных можно использовать поиск по шаблону. Шаблон это регулярное выражение, соответствует синтаксису принятому в Юниксе, и позволяет найти и выделить фрагмент практически любой сложности. (Расширенный синтаксис регулярных выражений допускаемый в Переле пока не поддерживается) Регулярное выражение представляет из себя подстроку поиска в которой также могут присудствовать, распозноваться и подставлятся метасимволы, модификаторы и переменные. Понимаются следующии метасимволы:
var county_code="CC",country="Country name",country_ip="127.0.0.1";
Эта версия включает в себя http прокси сервер. Вы можете указать порт для прокси, одновременное число подключений. Кэш на жестком диске. позволяет сохранять весь принятый трафик определенное количество дней. HTTP протокол предусматривает запрет кеширования определенных страниц. Часто владельцы сайтов пользуются этим только для того, что бы подсчитывать реальное число посещений. По вашему указанию сервер может игнорировать NO-CACHE. В этом случае страничка будет перегружаться только когда один из пользователей прокси нажмет кнопку Reload в своем браузере. Можно включить авторизованый доступ к прокси, и добавить пользователей для которых он разрешен. Смотрите так же описания ключей командной строки.
Эта версия включает в себя DNS сервер. Для запуска вы должны
указать hosts-файл. Формат этого файла с одной стороны совместим со
стандартным виндосовким, с другой стороны дополнен
возможностью быть похожим на формат мастер-файла рекомендованого в RFC 1035.
Для совместимости с системным хост-файлом, каждая строка должна состоять
из IP адреса и имени хоста. Комментарии начинаются с символа '#'.
В отличие от виндосовкого формата доменные имена в этом файле могут
начинаться с последовательности '*.' для описания всех поддоменов. Вот
пример такого файла:
# Here example of hosts file for local network begins. 192.168.1.21 www.max.local 192.168.1.21 max.local 192.168.1.21 max.max.local 192.168.1.20 *.max.local 192.168.1.22 www.boss.local 192.168.1.23 serg.local 192.168.1.26 www.serg.local 192.168.1.24 *.andy.local 192.168.1.25 *.mary.local # etc ... # end of hosts fileТак же каждая строка может соответствовать рекомендациям RFC и содержать имя домена и RR описание.
Сервер может поддерживать рекурсию. Для реализации резольвинга любого
домена вы должны указать NS записи корневых серверов. Если вы выбрали
"Рекурсивные вызовы только к серверам верхнего уровня." вместо корневых
серверов укажите DNS сервера вашего, провайдера. Все запросы будут идти
к ним. Иначе, сервер будет обращатся к различным серверам,
предположительно близким к запрошенной зоне.
Коментарии могут начинаться с ';'
Дополнительно понимаются следующие директивы:
$ORIGIN <domain-name>
$TTL <validate-time> -- время жизни по умолчанию -- целое, описывающие время в течении
которого запись может храниться в кеше.
$SLAVE <domain-name> <ip-address-of-master> [<filename>] -- Сервер будет работать как ведомый DNS для этого домена. Домен полностью загружается с ведущего сервера. Ведущий сервер будет периодически опрашиваться, в соответствии с полями REFRESH и SERIAL в SOA записи домена.
$IF_DOWN <host:port> <interval> Old.IP=New.IP -- По этой опции сервер будет пытаться соединится с host:port каждые interval секунд, и при неудаче в каждой записи содержащей Old.IP он будет временно заменяться на New.IP. До тех пор пока host:port не начнет работать.
Пример:
# Here is an example of hosts file for export domain to Internet, # and resolve other names. ; First, lines holds the information on root name servers needed to ; initialize cache of Internet domain name servers . IN NS a.root-servers.net a.root-servers.net IN A 198.41.0.4 . IN NS b.root-servers.net b.root-servers.net IN A 128.9.0.107 . IN NS c.root-servers.net c.root-servers.net IN A 192.33.4.12 . IN NS d.root-servers.net d.root-servers.net IN A 128.8.10.90 . IN NS e.root-servers.net e.root-servers.net IN A 192.203.230.10 . IN NS f.root-servers.net f.root-servers.net IN A 192.5.5.241 . IN NS g.root-servers.net g.root-servers.net IN A 192.112.36.4 . IN NS h.root-servers.net h.root-servers.net IN A 128.63.2.53 ; Now declare our domain $TTL 86400 ;TTL - 24 hours somedomain.net IN SOA somedomain.net max@somedomain.net ( 2002120602 ; Serial 36000 ; Refresh 3000 ; Retry 36000000 ; Expire 36000 ; Minimum ) IN NS ns.somedomain.net IN NS ns2.somedomain.net IN MX 1 relay1.somedomain.net IN MX 2 relay2.somedomain.net IN A 192.168.12.1 ns.somedomain.net IN A 192.168.12.1 ns2.somedomain.net IN A 192.168.12.2 relay1.somedomain.net IN A 192.168.12.1 relay2.somedomain.net IN A 192.168.12.2 pc2.somedomain.net IN A 192.168.12.2 IN NS ns2.somedomain.net IN MX 1 relay1.somedomain.net *.somedomain.net IN A 192.168.12.1 IN NS ns.somedomain.net IN NS ns2.somedomain.net IN MX 1 relay1.somedomain.net IN MX 2 relay2.somedomain.net ; also this file may contents lines in next format: 192.168.1.21 www.max.local 192.168.1.21 max.local 192.168.1.20 *.max.local $SLAVE domain2.name 192.168.12.8 domain2.name.txt $IF_DOWN 192.168.12.2:80 300 192.168.12.2=192.168.12.1 # end of hosts file
SMTP сервер может:
# Begin of file @yahoo 4.79.181. 67.28.113. one@address.com lotto ? $sender == spamer@address ? ! $hello =~ /.+\.[a-z]{2,4}/ ? $control =~ /\[64.156.215.*\]/ # End of file
# Here is the example of forward file. #if $text =~ /\nFrom: .*?boss@address/i !d:\perl\bin\perl.exe check.pl #endif #if $in_text(100% FREE) #mv c:\probably\spam #elif $size_kb<=20 && ! ( $text =~ /^From: .*?([^< ]+?@[^> \r\n]+).*/i && ($1 == my@private.address || $1 == boss@address ) || $in_text(do not redirect) ) #cp c:\probably\importan my_home@address my_seccond_address@yahoo.com #else !d:\perl\bin\perl.exe autoreply.pl $msgfile $1 #endif # End of forward fileПример:
# Here is the example of antivirus file. #if $text =~ /Content-Transfer-Encoding: ["`]?base64[\001-\xFF]*?\n\r?\nTVqQAAMA/ #if $text =~ /name=.*\.pif/ #mv c:\probably\virus #else !c:\DrWeb\drwebcl.exe /GO /TM- /WA- /TB- /ML #endif #elif $body =~ /<script language=/ && $body =~ /<!DOCTYPE HTML/ #mv c:\probably\spam #endif # End of fileФильтр разрыва, это специальное вырожение которое может осуществить проверку после того как сервер получил первые 8Kb сообщения. Если результат этого выражения исина, собщение не будет приниматья дальше, Комбинация "отправитель+IP адрес+приветствие сервера+получатели" будет помещена во временный черный список и последующие попытки отправить это сообщения будут присекаться еще до начала приема данных.
(! ( $msg =~ /^From:[^\n\r]*<([^>\n\r]+)>/i || $msg =~ /^From:[ \t]*([^\n\r]+)/i ) ) || $1 != $sender || $msg =~ /^Subject:[^\n\r]*семинар|руководителю|бухгалтеру/i || $msg =~ /aдpес[ \r\n\t]+пoлучен[ \r\n\t]+из[ \r\n\t]+oткpытыx[ \r\n\t]+истoчнuкoв/i || $msg =~ /р[ \r\n\t]*А[ \r\n\t]*м[ \r\n\t]*е[ \r\n\t]*р[ \r\n\t]*и[ \r\n\t]*к[ \r\n\t]*а[ \r\n\t]*н[ \r\n\t]*с[ \r\n\t]*к.*А[ \r\n\t]*н[ \r\n\t]*г[ \r\n\t]*л[ \r\n\t]*и[ \r\n\t]*/iВ данном примере: первые четыре строки проверяют наличие в сообщении поля From, выделяют адрес из этого поля и требуют совпадения этого адреса с адресом отправителя; следующая строка в поле Subject ищет любое из слов "семинар","руководителю","бухгалтеру"; следущей строкой в теле сообщения ищется строка "aдpес пoлучен из oткpытыx истoчнuкoв", при этом между словами может быть любое количество пробелов; последняя строка ослеживает различные модификации производные от строки "Центр Американского Английского"
POP3 сервер предоставляет доступ к входящей почте. Если POP3 прокси разрешен
то пользователи могут настроить свои почтовые программы чтобы забирать почту
с любых удаленных POP3 через этот POP3. Для этого, user настройка в почтовой
программе должна иметь вид:
local_user@remote_user@remote_host
Пароль должна иметь вид:
local_password@remote_password
Или @remote_password часть может быть добавлена к user настройке.
Везде вместо '@' может использоваться '#'.
FTP сервер предоставляет доступ к домашним каталогам пользователей и если
опция
"Разрешить виртуальные директории для FTP" выбрана то и к
приватным виртуальным каталогам. Открытые виртуальные каталоги
недоступны через FTP.
Если FTP прокси разрешен
то пользователи могут настроить свои FTP программы чтобы забирать почту
с любых удаленных FTP через этот FTP. Для этого, user настройка в FTP
программе должна иметь вид:
local_user@remote_user@remote_host
Пароль должна иметь вид:
local_password@remote_password
Или @remote_password часть может быть добавлена к user настройке.
Везде вместо '@' может использоваться '#'.
Некоторые FTP клиенты (например FTP плагин в Far-е) поддерживает
схожий тип FTP proxy. В этих клиентах в настройках файрвола можно указать
your_host:FTP_port, и указывать FTP URL-ы в виде:
ftp://local_user#remote_user:local_password#remote_password@ftp_host/
Сервер не содержит встроенных TLS/SSL криптографических функций,
но включает интерфейс для подключения внешней TLS/SSL билиотеки.
Вы можете подключить к серверу OpenSSL или
GNU TLS. Простая DLL базирующаяся
на OpenSSL 3.2.0 лежит здесь:
libsec320.zip OpenSSL включен
DLL базирующаяся на GnuTLS доступна здесь: seclibgnutls.zip, но для нее потребуется
еще и GnuTLS w32 доступный на gitlab
Для этой функцииональности необходим сертификат.
Простой и бесплатный способ получить его — cгенерировать самоподписанный сертификат, например с помощью OpenSSL:
openssl genrsa 2048 > ks.key openssl req -x509 -new -key ks.key -days 3650 > ks.pemks.pem — результирующий файл, который можно использовать как "файл сертификата"
openssl x509 -in ks.pem -outform der | sha256sumSelector=1 (subject public key)
openssl x509 -in ks.pem -pubkey -noout | openssl rsa -pubin -outform der | sha256sum
_443._tcp.smallsrv.com. IN TLSA ( 3 0 1 1ebec2c8434a67e0cbf35619819367067d5a852569666d4f6b222f722cc7cb65 ) _443._tcp.www.smallsrv.com. IN TLSA ( 3 0 1 1ebec2c8434a67e0cbf35619819367067d5a852569666d4f6b222f722cc7cb65 ) _25._tcp.smallsrv.com. IN TLSA ( 3 0 1 1ebec2c8434a67e0cbf35619819367067d5a852569666d4f6b222f722cc7cb65 ) _110._tcp.smallsrv.com. IN TLSA ( 3 1 1 5bdd89111e62a72c946d47a91e7a17aec3102d41a2523e04b510a83cebffdf1a )
Теперь эта программа может создавать VPN-канал внутри HTTPS-соединения.
openssl rehash -compat -v путь_к_этому_каталогуЕсли вы используете GnuTLS, есть несколько дополнительных опций, например. вы можете отключить проверку времени сертификата и включить стиль проверки SSH. В этом случае сертификат хоста в первый раз будет воспринят как действительный, и для хоста будет сохранен открытый ключ. В следующие разы будет проверен открытый ключ.
М. Феоктистов