Какие порты использует 1с 8.3. Решение возможных проблем с установкой

26.07.2017

Добавление правила в брандмауэр Windows Server 2012 R2 для 1С: Предприятие

В процессе работы различных служб и программного обеспечения по сетевым протоколам, данные рабочие элементы используют конкретные порты, через которые происходит обмен данными.

В конфигурации бранмауэра Windows Server 2008/2012 R2 по умолчанию предусмотрена блокировка сетевой активности. Чтобы дать возможность вашим клиентским программам работать через соответствующие порты с серверными компонентами, необходимо добавить в Windows Firewall правила, которые позволят производить обмен данными в сети с использованием определенных портов.

Зачастую пользователи сталкиваются с ситуациями, в которых клиентскому ПО не удается найти сервер «1С:Предприятие», запущенный в серверной среде, управляемой Win Server 2012. При этом могут вылетать ошибки следующего характера:

    ошибка доступа к серверу по сети;

    ошибка при выполнении операций с информационной базой;

    безуспешная попытка установить соединение, не был получен нужный отклик от другого компьютера;

    было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера.

Данные ошибки указывают на то что клиентскому По не удалось по указанному адресу найти 1С-сервер. Нередко случается так, что на сервере требуемый для подключения порт просто закрыт. В случае с 1С-сервером это порт под номером 1541.

Чтобы открыть данный порт, необходимо зайти на сервер через RDP-подключение и запустить управление Windows Firewall. Эту операцию можно произвести двумя способами. Первый вариант – перейти в «Панель управления», далее в подраздел «Система и безопасность», гд е нужно запустить, собственно, брандмауэр.

Также для этого можно воспользоваться командной строкой, выполнив в ней команду firewall.cpl – для этого нажимаем горячие клавиши Win+R, после чего переходим в раздел «Открыть», вводим имя команды и жмем подтверждение действия.

После того, как мы получили доступ к брандмауэру Windows, в его активном окне нам нужно выбрать раздел дополнительных параметров, который расположен в левом меню. Дальше в левой части открывшегося нового окна необходимо перейти к разделу правил для входящих подключений и через меню «Действия» выбрать «Создать новое правило».

Перед нами откроется мастер создания правил для новых входящих подключений. На титульной странице необходимо выбрать тип выбираемого правила, помеченный названием «Для портов» и можно перейти дальше. Теперь укажем протокол передачи сетевых данных (в нашем случае указываем TCP), а также номер открываемого порта.

На следующей вкладке нам нужно будет указать непосредственно действие, которое будет связано с создаваемым нами правилом. Нас интересует действие «Разрешить подключения». Выбираем его и жмем «Далее». Теперь отмечаем требуемые профили Windows Firewall, на которые должно распространяться создаваемое нами действие. Последняя страница мастера предлагает нам ввести имя для нового правила, а также добавить для него описание по желанию. Жмем готово и завершаем работу с мастером.

После создания правила нужно снова попробовать подключиться к 1С-серверу. При подключении мы увидим ту же самую ошибку, но теперь в сообщении говорится уже о другом порте под номером 1560.

По аналогии с описанной выше схемой добавления портов добавляем еще одно правило, в котором указываем диапазон портов 1560-1591. Эти порты требуются для обеспечения различных рабочих процессов программы 1C. Порты, входящие в этот диапазон, указываем через дефис в разделе «Protocol and Ports».

После проделанных манипуляций переходим в оснастку «Windows Firewall with Advanced Security». Здесь, в разделе правил для входящего подключения мы сможем увидеть созданные нами правила. При этом теперь клиент 1С должен свободно подключаться к серверному окружению. Если требуется подключение к вашему серверу через консоль серверного администрирования 1C, вам потребуется создать отдельное правило, открывающее порт 1540.

При необходимости добавления правил к исходящим подключениям можно воспользоваться той же схемой создания правил для отдельных протоколов и программ.

Настройка Windows Firewall для Win Server 2012 на 1С-сервере + MS SQL

Теперь несколько слов о том, как произвести настройку брандмауэра под Windows Server 2012 в указанной конфигурации. Такая связка – не редкость для современных офисов, но иногда требуется дополнительное время, чтобы разобраться в принципе работы Windows Firewall относительно серверного окружения 1С.

При условии, что сервер осуществляет прием подключения на стандартный TCP-порт 1433, нужно просто разрешить этот порт, воспользовавшись созданием правил для брандмауэра, принцип которого мы рассмотрели выше. Чтобы проверить, действительно ли работа идет через этот порт, можно запустить оснастку «Диспетчер конфигурации SQL Server» в Server 2012 и перейти на вкладку сетевой конфигурации. Здесь нужно выбрать вкладку протоколов для MSSQLSERVER и в левом окне найти TCP/IP-протокол. Выбираем его и кликаем «Свойства», после чего ищем вкладку «IP-адреса» и раскрываем ветку «IPAII».

Если же SQL-порт динамический, потребуется разрешение подключения к следующему приложению %ProgramFiles%\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\sqlservr.exe.

Как уже было сказано выше, 1С-сервер работает с портом 1541 и портами в диапазоне 1560-1591. Однако нередко случается так, что по непонятным причинам данный список откртых портов все равно не дает выполнять подключение к серверу. Чтобы все работало на 100% нужно всего лишь расширить этот диапазон, указав в нем порты от 1540 до 1591.

Предыстория… В нашей компании успешно работает 1С:Предприятие версии 8.2, в которой заведено порядка 100 интенсивно используемых бухгалтерских баз. Под это дело выделен отдельный сервер с довольно внушительными характеристиками, т.к. в процессе эксплуатации выяснилось, что связка 1С:Предприятие 8.2 + MS SQL 2005 очень требовательны к таким ресурсам “железа”, как жесткие диски, процессор, а самое главное – количество оперативной памяти. Стоимость подобного сервера для нас превысило 250 тысяч рублей (не считая лицензий как на ОС, так и на саму 1С).

Выделять отдельно “железо” под 1С:Предприятие версии 8.3 посчитали делом неразумным, к тому же платить еще порядка 100 тысяч рублей за второй комплект ключей для сервера 1С, ну очень накладно! Попытка установить “в лоб” 1С:Предприятие версии 8.3 привело к тому, что был потерян кластер с уже существующими базами. Вот тут-то и вскрылись особенности установки и запуска двух серверных версий 1С:Предприятия на одном компьютере.

Программа установки 1С:Предприятия 8.2 и 8.3 настраивает программное обеспечение на использование своих стандартных портов: 1540 (используемый агентом сервера), 1541 (используемый менеджером кластера), 1560-1591 (диапазон портов, используемый для рабочих процессов). Поэтому, если сервер 1С:Предприятие 8.3 должен работать одновременно с сервером 1С:Предприятия 8.2, то первому необходимо указать порты отличные от тех, что уже использует работающий экземпляр сервера предыдущей версии.

На компьютере с уже установленным сервером 1С:Предприятия версии 8.2 зарегистрирован и запущен сервис “Агент сервера 1С:Предприятия 8.2”, уже использующий указанные выше стандартные порты. Если вы установили “рядом” сервер 1С:Предприятие 8.3, то запуск его сервиса “Агент сервера 1С:Предприятия 8.3” завершится аварийно, т.к. он попытается использовать уже “занятые” порты. Чтобы избежать этого, необходимо выполнить следующее.

(Все описанное ниже справедливо для Windows Server 2008 R2 Enterprise (и Standart) 64 bit + SP1 и 32-х разрядных серверных версий 1С:Предприятие 8.2 и 8.3).

1С:Предприятие 8.2 (версия 8.2.19.90) мной устанавливались как сервис Windows с правами для запуска от имени существующего локального пользователя “Администратор”.

По окончании установки в окне Диспетчер сервера -> Конфигурация -> Службы мы видим запущенную службу “Агент сервера 1С:Предприятия 8.2”:

запущенную с параметрами:

C:\Program Files (x86)\1cv82\8.2.19.90\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files (x86)\1cv82\srvinfo"

Сервер 1С:Предприятия 8.3 (версия 8.3.4.437) мной устанавливался аналогичным образом:

Однако, как мы видим в окне Диспетчер сервера -> Конфигурация -> Службы , служба “Агент сервера 1С:Предприятия 8.3” не стартовала:

Теперь нам надо открыть окно командной строки cmd и перейти в каталог bin установленной серверной версии 1С:Предприятия 8.3 и попытаться удалить регистрацию сервиса “Агент сервера 1С:Предприятия 8.3” командой ragent.exe -rmsrvc:

C:\Users\администратор>cd C:\Program Files (x86)\1cv8\8.3.4.437\bin C:\Program Files (x86)\1cv8\8.3.4.437\bin>ragent.exe -rmsrvc Error! ControlService error!

У меня выскочила ошибка Error! ControlService error! , что в принципе ожидаемо, т.к. сервис должным образом не зарегистрировался в системе. Но на самом деле, он должен удалиться. В окне Диспетчер сервера -> Конфигурация -> Службы вы его больше не увидите.

Теперь вам надо произвести повторную регистрацию данного сервера, но при этом указать порты отличные от тех, которые уже использует агент 1С:Предприятия 8.2. В моем случае команда будет иметь вид:

C:\Program Files (x86)\1cv8\8.3.4.437\bin>

  • -port 2540 — порт, на котором будет работать агент сервера 1С:Предприятие версии 8.3;
  • -regport 2541 — порт, через который будет осуществляться администрирование кластера сервера 1С:Предприятие версии 8.3;
  • -range 2560:2591 — диапазон портов для рабочих процессов;
  • -в “C:\Program Files (x86)\1cv8\srvinfo” — каталог для хранения информации о новом создаваемом кластере сервера 1С:Предприятие версии 8.3;
  • -usr .\Администратор — пользователь, от имени которого будет осуществлен запуск агента сервера 1С:Предприятие версии 8.3;
  • -pwd ******** — пароль для указанного пользователя (введите свой).

После этого вы вновь увидите сервис “Агент сервера 1С:Предприятия 8.3” в окне Диспетчер сервера -> Конфигурация -> Службы . Вам осталось только запустить его командой ragent.exe -start:

C:\Program Files (x86)\1cv8\8.3.4.437\bin>ragent.exe -start

В окне Диспетчер сервера -> Конфигурация -> Службы мы видим службу “Агент сервера 1С:Предприятия 8.3”:

запущенную с параметрами:

где поле “Исполняемый файл” имеет настройку:

C:\Program Files (x86)\1cv8\8.3.4.437\bin\ragent.exe" -srvc -agent -regport 2541 -port 2540 -range 2560:2591 -d "C:\Program Files (x86)\1cv8\srvinfo"

А теперь самое интересное: вам придется проделывать данную операцию каждый раз, когда возникнет необходимость обновить версию сервера 1С:Предприятия 8.3! “Браво”, разработчики…

Теперь немного о том, каким образом жить с указанной связкой. Необходимости запускать саму программу 1С:Предприятия старой версией (из папки C:\Program Files (x86)\1cv82\common) больше нет. При установке 1С:Предприятия версии 8.3 ярлык на рабочем столе автоматически перезапишется на запуск программы из папки C:\Program Files (x86)\1cv8\common . Если вы будете открывать бухгалтерскую базу, работающую на сервере версии 8.2, она автоматически откроется в нужной версии тонкого клиента.

Шаблоны для создания баз (бухгалтерских или ЗИК ) помещаются по умолчанию в каталог пользователя, от имени которого вы запустили их установку. Если вы делаете это от имени администратора, то найдете их по пути C:\Users\администратор\AppData\Roaming\1C\1cv8\tmplts . Если вы захотите добавить новую базу на основе установленного шаблона, тонкий клиент версии 8.3 увидит их все:

Теперь, если вам необходимо прописать базу версии 8.3, то вам необходимо будет указывать в поле “Кластер серверов 1С:Предприятия” компьютер, с установленным сервером 1С версии 8.3 и через двоеточие порт менеджера кластера, который вы указали при регистрации агента сервера 1С версии 8.3. В моем случае – это 2541:

При добавлении в список бухгалтерских баз новой, находящейся на сервере предприятия под управлением 1С:Предприятие версии 8.3 также необходимо указывать имя сервера, а через двоеточие – порт, используемый менеджером кластера:

Необходимость производить регистрацию утилиты для администрирование кластера обоих сервером 1С (как версии 8.2, так и 8.3) после каждой установки/обновления сохраняется.

Теперь перейдем к администрированию кластеров под управлением различных версий серверов 1С:Предприятие на одном компьютере. Откройте в проводнике папку по пути C:\Program Files (x86)\1cv8\common , и создайте на рабочем столе ярлык для консоли администрирование кластера версии 8.3 (ярлык лучше сразу переименовать соответствующим образом, например 1CV8.3 ):

Таким же образом, откройте в проводнике папку по пути C:\Program Files (x86)\1cv82\common , и создайте на рабочем столе ярлык для консоли администрирование кластера версии 8.2 (ярлык лучше сразу переименовать, например в 1CV8.2 ):

На рабочем столе вы получите следующее:

Запустим утилиту администрирование кластера сервера 1С:Предприятие версии 8.2 ярлыком “1CV8.2” (т.к. сервер использует порты по умолчанию, то кластер отобразится без проблем):

При попытке открыть данный кластер из консоли, предназначенной для администрирование кластера сервера 1С:Предприятие версии 8.3 (по ярлыку с рабочего стола с именем “1CV8.3”) вы увидите ошибку:

Ошибка соединения с сервером 1С:Предприятия 8.3: Различаются версии клиента и сервера (8.3.4.437 - 8.2.19.90), клиентское приложение: Консоль кластера

Для отображения нужного нам кластера сервера 1С:Предприятие версии 8.3 необходимо в данной оснастке создать новый центральный сервер 1С:Предприятия 8.3:

  • в поле Имя необходимо указать имя компьютера с установленным сервером 1С:Предприятие 8.3;
  • в поле IP порт необходимо указать порт, на котором работает агент сервера 1С:Предприятия 8.3, который вы обозначали при настройке службы запуска агента;
  • в поле Описание обозначить описание.

После нажатия кнопки “ОК” вы сможете увидеть ваш новый кластер, который получился после установки сервера 1С:Предприятие версии 8.3.

Т.е. администрирование кластеров различных версий сервера 1С:Предприятия, установленных на одном компьютере, осуществляется соответствующими оснастками.

Вот, в принципе, и все. Удачи!

_________
UPD . Как показала практика, способ, описанный в данной статье, не подходит для одновременного запуска на одном сервере нескольких экземпляров сервера 1С:Предприятия версии 8.3. При попытке создать новую службу агента 1С от другой версии 1С:Предприятия, работающую на иных портах, операция:

C:\Program Files (x86)\1cv8\8.3.4.437\bin>ragent.exe -instsrvc -port 2540 -regport 2541 -range 2560:2591 -d "C:\Program Files (x86)\1cv8\srvinfo" -usr .\Администратор -pwd ********

заканчивается тем, что удаляется уже работающая служба старой версии 1С 8.3, а новая не создается.

В я описал способ установки, создания соответствующих и запуска на одном сервере нескольких версий сервера 1С:Предприятия 8.3…

Статья посвящена запуску платформ 1С:Предприятие версий 8.1 и 8.2 на одном рабочем сервере. Это может понадобиться в условиях когда, скажем, частичный переход на 8.2 уже произведен, но на предприятии еще используются конфигурации под 8.1.

И так, имеем рабочий сервер SERVER-1C с установленным Windows Server 2008 R2 и Windows SQL Server 2008 x64.

Произведем по очереди процедуру инсталляции платформ.

Начнем с 1С:Предприятие 8.1. Сам процесс мы описывать не станем, т.к. ничего сверхъестественного в этом нет. После установки идем в и запустим консоль Службы . Зайдем в свойства службы Агент сервера 1С:Предприятие 8.1 (1C:Enterprise 8.1 Server Agent) и убедимся, что она запускается от Пользователя с правами администратора или с системной учетной записью.

Запустим эту службу. Подключим пробную БД FirmaBuh81 :

И подключимся к ней с рабочей станции:

После того как пробное подключение успешно выполнено, приступим к установки 1С:Предприятие 8.2. После этого аналогичным образом как мы делали выше зайдем в Пуск - Панель управления - Администрирование и запустим консоль Службы . Появится служба Агент сервера 1С:Предприятие 8.2 (1C:Enterprise 8.2 Server Agent) . Аналогично версии 8.1 установим вход параметры входа для этой службы:

Тут следует отметить одну важную вещь. По стандарту 1С:Предприятие запускается на 1541 порту. Для того что бы запустить сразу несколько служб Агент сервера 1С:Предприятие 8.Х нам потребуется изменить порт, за которым привязывается служба. Дальше мы будем менять порты для версии 8.2.

Запускаем редактор реестра (Пуск-Выполнить вводим regedit и нажимаем ОК). Проходим по пути:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

И видим две папки с названиями наших служб Агента сервера 1С:Предприятие (1C:Enterprise 8.Х Server Agent)

Нам требуется изменить значение строкового параметра ImagePath с

"C:\Program Files\1cv82\8.2.13.219\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv82\srvinfo"

"C:\Program Files\1cv82\8.2.13.219\bin\ragent.exe" -srvc -agent -regport 1641 -port 1640 -range 1660:1691 -d "C:\Program Files\1cv82\srvinfo"

После этих действий можем спокойно запускать службу Агент сервера 1С:Предприятие 8.2 (1C:Enterprise 8.2 Server Agent) в Службах.

Действия аналогичны). Правило будем добавлять на примере работы сервера 1С:Предприятие 8.х (необходимо открыть порт 1541 для менеджера кластера, порты 1560-1591 для рабочих процессов и порт 1540 для агента сервера).

Некоторые программы и службы при работе через сетевые протоколы используют определенные порты для обмена данными. По умолчанию включенный брандмауэр Windows блокирует подобную сетевую активность. В частности, если попытаться подключиться с клиентской машины к можно натолкнуться на ошибку:

«Ошибка при выполнении операции с информационной базой (…). Ошибка сетевого доступа к серверу (…). Попытка установить соединение была безуспешной, т. к. от другого компьютера за требуемое время не получен нужный отклик, или было разорвано уже установленное соединение из-за неверного отклика уже подключенного компьютера (…) »

Данная ошибка означает, что по указанному адресу не найден сервер «1С:Предприятия», ну или на сервере закрыт порт (в данном случае порт 1541 ).

Для открытия порта, заходим на компьютер, где установлен сервер «1С:Предприятия» (в моем примере это компьютер с адресом 10.192.128.15 и установленной на нем операционной системой Windows Server 2012 R2).

Запускаем брандмауэр Windows. Сделать это можно кликнув правой кнопкой мыши по «Пуск » (Start ), затем «Панель управления » (Control Panel ) — «Система и безопасность » (System and Security ) — «Брандмауэр Windows » (Windows Firewall ). Или же выполнив команду firewall.cpl (для этого необходимо нажать комбинацию клавиш Win + R, в окне «Отрыть » (Open ) ввести имя команды и нажать «ОК ») .

В открывшемся окне, в дереве слева откроем вкладку «» (Inbound Rules ), а затем в меню «Действия » (Actions ) выберем пункт «Создать правило… » (New Rule… ).

Запустится «Мастер создания правила для нового входящего подключения » (New Inbound Rule Wizard ). На первой странице выберем тип правила (Rule Type ) «Для порта » (Port ) и нажмем «Далее » (Next ).

Затем необходимо указать протокол (в нашем примере это TCP) и, непосредственно, номер порта (Specific local ports), который открываем. После чего жмем «Далее » (Next ).

Теперь укажем действие связанное с добавляемым правилом. Выберем «Разрешить подключение » (Allow the connection ) и нажмем «Далее » (Next ).

На следующей странице нужно указать, для каких профилей брандмауэра будет действовать правило. Отмечаем нужные профили галочками и жмем «Далее » (Next ).

Ну и наконец, вводим имя и описание для нового правила и нажимаем «Готово » (Finish ) для завершения работы мастера.

Пробуем снова подключиться к серверу «1С:Предприятия» и видим что ошибка сохранилось, но в сообщении уже другой, 1560-ый порт.

Вышеописанным способом добавим еще одно разрешающее правило, с названием «1С: Рабочие процессы » для всего диапазона портов с 1560 по 1591 (для рабочих процессов 1С), указав их через дефис на шаге «Протокол и порты » (Protocol and Ports ).

Теперь, в оснастке «Брандмауэр Windows в режиме повышенной безопасности » (Windows Firewall with Advanced Security ) в таблице «Правила для входящих подключений » (Inbound Rules ) мы должны увидеть 2 только что созданных правила.

Ну а должен без ошибок подключиться к серверу. Если же потребуется подключаться к этом серверу через , то необходимо также открыть порт 1540 .

Аналогичным образом добавляются правила для для исходящих подключений (Outbound Rules), запрещающие правила, правила для определенных программ и протоколов. Также любое правило можно изменить, открыв его свойства из данной оснастки.

Помогла ли Вам данная статья?