1с линукс подключение базы

Настройка веб-сервера Apache под Linux


План работ:


  1. Установка Apache под Linux.
  2. Выпуск самоподписанного сертификата (Необязательно).
  3. Публикация информационной базы.
  4. Проверка публикации.

В отличие от IIS, веб-сервер Apaсhe доступен как для Windows, так и для Linux и позволяет настроить работу публикаций по шифрованному протоколу HTTP.

1. Установка Apache под Linux

Установка веб-сервера и публикация информационной базы для операционной Linux будет продемонстрирована на базе Ubuntu 18.04 LTS. Все, что касается настроить информационной базы не зависит от конкретной версии дистрибутива Linux. Установка же веб-сервера может отличаться.

В данной статье не рассматривается установка и запуск Apache под всевозможные семейства операционных систем Linux. При использовании операционной системы отличной от указанной в статье следуют руководствоваться официальной документацией конкретного вашего дистрибутива.

Итак, предполагается, что есть только что установленная операционная система Ubuntu 18.04 LTS без графического интерфейса пользователя.
Перед тем как продолжить, нужно проверить доступные версии программного обеспечения дистрибутива. Выполняем команду:

В выводе результата команды можно увидеть, что доступны обновления. Рекомендуются их обновить с помощью команды (подсказка «Run ‘apt list –upgradable’»):

По завершению обновления пакетов приложений можно приступить к установке непосредственно веб-сервера.

После этого нужно выполнить команду:

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

Далее нужно проверить, что помимо самой установки, веб-сервер запустился и готов обрабатывать запросы (для данной команды использование sudo не обязательно):

В ответ можно увидеть, что состояние службы active (running). Это значит, что веб-сервер работает в штатном режим и можно переходить к публикации информационной базы с помощью командного интерпретатора bash, либо к генерации самоподписанного сертификата (если в этом есть необходимость).

2. Выпуск самоподписанного сертификата

После установки Apache в операционной системе уже должен быть установлен openssl как зависимость к дистрибутиву. Поэтому можно сразу приступить к генерации сертификата.

Первоначально нужно перейти в директорию хранилища сертификатов с помощью команды:

После чего требуется ввести команду генерации сертификата, где вместо нужно подставить имя компьютера, на котором планируется размещен Apache:

Во время выполнения команды будет задано несколько вопросов. Для «Common Name (e.g. server FQDN or Your bane)» нужно также указать имя сервера. Остальные поля заполняются произвольно (кроме «Country name» — здесь можно оставить по умолчанию).

3. Публикация информационной базы

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

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

После разархивирования нужно инициировать процедуру установки пакетов.

Как только все готово, необходимо перейти к публикации информационной базы. Для этого требуется перейти в директорию установленной платформы и выполнить команду:

В директории платформы следом нужно выполнить команду:

где нужно заменить:

ИМЯ ПУБЛИКАЦИИ – на произвольное имя публикации

ИМЯ СЕРВЕРА – на адрес сервера 1С:Предприятие

ИМЯ БАЗЫ – на имя базы, совпадающим с именем базы зарегистрированной в кластере

После этого следует перейти в директорию публикаций:

С помощью любого удобного редактора нужно отредактировать файл 000-default.conf и добавить в самый конец файла следующий текст настройки:

После добавления нужно сохранить и закрыть файл и выполнить команду для включения модуля ssl для Apache:

И после этого нужно перезапустить Apache и убедиться, что ошибок не возникает.

4. Проверка публикации

Для проверки корректной работы нужно открыть страницу в браузере и перейти по ссылке, которая состоит из двух частей:

  • Имя вашего сервера (например, server2).
  • Имя публикации базы (которое было указано в окне настройки публикации).

Для таких параметров ссылка будет иметь вид:

Источник

БАЗА ЗНАНИЙ

Инструменты пользователя

Инструменты сайта

Содержание

Установка 1С:Предприятие 8.3 на Linux сервер

В этой статье мы постарались собрать наиболее полную информацию по установке сервера приложений 1С:Предприятие в среде Linux с использованием СУБД PostgreSQL и публикацией информационной базы и веб-сервисов на веб-сервере Apache. Рассматривается наиболее полная установка сервера в домен Microsoft Windows. Пользователи работают на рабочих станциях в среде Windows, авторизация в системе 1С:Предприятие производится через Active Directory.

План работ

Установка операционной системы

Поддерживаются наиболее популярные deb (Ububtu, Debian и пр.) и rmp (CentOS, Fedora и пр.) дистрибутивы. Каких-либо явных рекомендаций по выбору того или иного дистрибутива Linux не существует. Рекомендуем выбрать наиболее знакомый Вам дистрибутив, в нашем случае это Ubuntu актуальной на момент написания статьи версии 16.04 LTS, все дальнейшее описание будет основываться именно на этом выборе. Если Вы выбрали другой deb-based дистрибутив, то все описанное подойдет и для него, rmp-based дистрибутивы используют другие команды для управления пакетами, учитывайте это при адаптации статьи для своих целей. Скачайте дистрибутив Ubuntu Server. Применительно к Ubuntu желательно использовать LTS дистрибутивы, они выпускаются раз в два года и поддерживаются в течение 5 лет. Дистрибутив распространяется в виде ISO образа загрузочного диска, можно записать образ на DVD диск, но гораздо удобней подготовить загрузочную флешку.

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

Если у Вас один физический диск (или RAID-массив), разделите его на 3 логических диска. В начале диска выделите 60-120 Гб собственно под операционную систему (диск 1), оставшуюся часть поделите примерно поровну под домашние папки (диск 2) и файлы СУБД (диск 3). Монтируйте следующим образом:

Если же дисковая система Вашего сервера более разнообразна, то самый медленный ее элемент рекомендуем монтировать как /home , а самый быстрый как /var .

Далее инсталлятор предложит Вам выбрать наборы пакетов для установки. Выберите для установки следующие наборы:

Инсталлятор закончит свою работу, перезапустит систему и пред Вами предстанет приглашение в консоль примерно такого вида:

Заходите, и чувствуйте себя как дома.

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

В ответ Вы получите нечто похожее на

Нас интересует вот этот фрагмент: logical name: enp0s3 . Если сетевых адаптеров больше одного, то и таких блоков в выдаче будет по количеству сетевых адаптеров. Запоминаем логические имена. Сетевые подключения настраиваются в конфигурационном файле, откроем его для редактирования

Допустим, у нас есть два сетевых адаптера. enp0s3 , его мы настроим на статический IP адрес и будем использовать для подключения к домену. Еще есть enp0s8 , он получит адрес от DHCP сервера в локальной сети, просто так, для примера. Файл настроек выглядит так:

Сохраните файл нажав Ctrl-O и закройте редактор Ctrl-X. После редактирования перезапустим сеть:

и проверим что у нас получилось

В выдаче этой команды внимательно смотрим на значения inet addr — в нашем примере там должен быть статический адрес, заданный в конфигурационном файле для первого адаптера и динамический адрес выданный DHCP сервером для второго.

Для дистанционного управления сервером с рабочей станции Windows мы будем использовать PuTTy. Скачайте, установите и подключайтесь. Адрес сервера в нашем примере указывается так user@192.168.0.8 , где user — имя пользователя, порт по умолчанию 22 .

Задача минимум сейчас — расшарить папку на сервере, куда мы сможем копировать нужные файлы.

В конфигурационном файле находим и раскомментируем блок

Добавим нашего пользователя в Samba

Указываем ему пароль и включаем

И перезапускаем Samba

Попробуем зайти из проводника Windows. В нашем примере это будет выглядеть так \\192.168.0.8\user , вводим имя, пароль и попадаем в домашнюю папку.

На всякий случай обновите русскую локаль

Установка СУБД PostgreSQL

Существует несколько источников, где можно взять дистрибутив PostgreSQL совместимый с 1С:Предприятие. Можно, например, как рекомендует сама фирма «1С» скачать его с портала ИТС и установить из deb или rpm пакетов, такой подход вполне привычен для пользователей Windows, скачивать и устанавливать. В Linux другой подход. Например, для поклонников Gentoo Linux привычно было бы скачать исходники PostgreSQL, пропатчить их и скомпилировать. А философия Ubuntu базируется на репозиториях, откуда пользователи получают нужные программы, устанавливая их менеджерами пакетов. К сожалению фирма «1С» не озаботилась созданием такого репозитория для распространения специальной версии PosgreSQL, зато это сделала компания Postgres Professional.

Сначала всё-таки стоит добавить официальный репозиторий PostgreSQL в Ubuntu. Это будет полезно для разрешения зависимостей пакетов.

Качаем файл postgresql_10.5_24.1C_amd64_deb.tar.bz2 где 5_24 — актуальный на момент написания статьи номер сборки, к моменту, когда Вы это прочтете он может стать другим, берите самую актуальную сборку.

Распакуем, перейдем в папку с пакетами, установим и зафиксируем версии, что бы Ubuntu при автоматическом обновлении не заменила эти пакеты на стандартные из репозитория:

Не забываем заменять 5-24 на номер скачанной сборки.

Настроим права на подключение к СУБД из консоли.

В открывшемся файле найдем строку

и приведем ее к виду

Если не хотите, что бы сервер СУБД был виден кому-либо, кроме сервера 1С:Предприятие, который мы чуть позже установим, поправьте настройки безопасности

В открывшемся файле находим строку

и приводим ее к виду

После такой установки PostgreSQL его служба сама не стартует и не прописывается в автозагрузку. Сделаем это

И еще немного настроек безопасности. Установим пароль password на пользователя postgres , именем которого будут производится все операции с базами данных (вместо password укажите свой пароль).

Поправим методы аутентификации пользователей

В открывшемся файле устанавливаем все методы в md5 , например, так

Перезапускаем службу PostgreSQL

Установка сервера 1С:Предприятие

Предварительно установим пакеты, необходимые для работы сервера 1С:Предприятие

В процессе установки пакета ttf-mscorefonts-installer потребуется принять условия пользовательского соглашения EULA.

Любым законным способом получаем дистрибутив платформы 1С:Предприятия для deb-based Linux, например, скачиваем его с портала ИТС. Сервер 1С:Предприятие состоит из 3-х пакетов:

Скопируйте только эти 3 файла по сети в домашний каталог пользователя, в нашем примере \\192.168.0.8\user Устанавливать пакеты нужно именно в такой последовательности. Случайно или нет, они по алфавитному порядку выстраиваются именно так, как нужно, а значит их можно установить одной командой

Сервер установлен. Запускаем

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

Отладка на сервере

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

Ищем в файле строку вида

Раскомментируем и включаем

Сохраняем Ctrl-O, закрываем редактор Ctrl-X. Обновляем системных демонов и рестартуем сервер 1С.

Регистрация сервера в домене

Как обычно, начнем с установки необходимых пакетов

Если при установке системы не устанавливали Samba, то самое время сделать это

И еще может понадобиться, а может нет, но лучше установить

Настроим DNS

Сначала разберемся с именем самого сервера

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

Теперь научим его находить самого себя по своему короткому и полному доменному имени.

Здесь нужно сопоставить имена с IP адресом любого сетевого соединения, например, так

и прописываем имена и адреса

Если есть еще один сервер службы имен в домене, добавьте в файл еще одну строчку nameserver с его адресом.

При получении IP адреса от DHCP по идее все должно настроиться автоматически, но есть нюансы, записи домена могут не определиться. Исправляем

Добавляем запись домена

Чтобы добавить еще один сервер службы имен домена находим в этом файле строку prepend domain-name-servers , раскомментируем ее и указываем нужный IP адрес.

Перезапустим службу сети

Проверим, что у нас получилось. Попробуйте пингануть контроллер домена по короткому и полому доменному имени имени, допустим его зовут server

Синхронизируем часы

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

Установим часового демона, который будет периодически синхронизировать время с контроллером домена по протоколу NTP

укажем источник точного времени в домене — контроллер домена

Настроим авторизацию через Kerberos

Открываем конфигурационный файл

И приводим его к такому виду, разумеется заменяя имена и IP адреса нашего примера под свои условия

Пробуем войти в домен как его пользователь ivanov

Если все настроено правильно, система запросит пароль пользователя домена и Вы не увидите никаких сообщений об ошибках. Посмотреть полученный билет можно командой

Он выглядит примерно так

И он нам больше не нужен, удалим его

Настроим Samba и включим сервер в домен

Открываем файл конфигурации Samba

И приводим его примерно к такому виду

Проверим правильность настроек

Если ошибок нет, и правильно установлена роль

то мы готовы включиться в домен, разумеется, если знаем пароль администратора домена domainadministrator

Если Вы видите нечто похожее на

то поздравляем, у Вас все получилось, Вы в домене!

Авторизация пользователей 1С:Предприятие на Linux сервере через Active Directory

В клиент-серверном варианте работы 1С:Предприятие аутентификация пользователей производится на сервере. Если сервер работает под управлением Windows, то он без проблем получает нужные права для того, что бы проверить учетную запись Active Directory.

В Linux дела обстоят иначе. Сервер 1С:Предприятие у нас работает под учетной записью usr1cv8 , которая имеет какие-либо права только в пределах нашего linux-сервера. В домене у этого linux-пользователя нет никаких прав, соответственно сервер 1С:Предприятие не может получить ничего от Active Directory.

Что бы исправить эту проблему серверу 1С:Предприятие нужно выдать специальный «билет» и сопоставить его с пользователем Active Directory по протоколу Keberos.

Создайте такого пользователя в Active Directory, назовите его, например, linux1сv8 . Права у него могут быть совершенно любые, главное, что бы в настройках его учетной записи была отключена опция Use DES encryption types with this account .

Теперь нам потребуется командная строка Windows рабочей станции, включенной в домен и утилита ktpass , найти ее можно в пакете «Windows Support Tools» сервера или «Средства удаленного администрирования» полнофункциональных версий настольных Windows. Эта утилита генерирует специальный ключ, который не-windows системы могут использовать для авторизации в домене по протоколу Keberos.

Полученный файл переместите по сети в домашнюю папку на linux-сервер \\myserver\user . А на сервере его нужно переместить в каталог, где установлено 1С:Предприятие, поменять ему владельца и назначить безопасные права

Проверим, все ли сделано правильно

Если Вы видите нечто похожее на

то у Вас все получилось, поздравляем!

Публикация на веб-сервере Apache

Как всегда, начинаем с установки нужных нам пакетов. Если Вы разворачиваете отдельный сервер для web-публикации, при установке на него операционной системы достаточно указать, что этот сервер будет работать как LAMP (Linux Apache MySQL Php).

Если сервер уже установлен без Apache

Уточним, что мы установили из репозитория

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

Проверяем, заходим через браузер http://myserver/base1c и видим веб-клиента 1С:Предприятие.

Опубликуем веб-сервисы. Утилита webinst этого не сделала, а значит придется сделать это самим. Для этого нужно отредактировать файл публикации информационной базы, созданный этой утилитой

В этот XML файл после блока, описывающего подключение к информационной базе нужно добавить блоки с описанием публикуемых веб-сервисов информационной базы, например, для работы мобильного приложения 1С:Заказы с поддерживаемыми конфигурациями нужно опубликовать веб-сервис CustomerOrdersExchange . Подробнее см. информацию в документации к прикладному решению на платформе 1С:Предприятие.

После изменений в конфигурационных файлах не забывайте перезапускать Apache.

Настройка HTTPS

Для совсем правильного и безопасного доступа по протоколу HTTPS нужно получить цифровой сертификат, подписанный удостоверяющим центром (Certificate Authority). Такие сертификаты гарантируют не только шифрование трафика между клиентом и сервером, но и обезопасят ваших пользователей от кражи паролей, особенно, если они будут подключаться из публичных wi-fi сетей.

Такой сертификат можно приобрести практически у любого хостинг-провайдера, многие предлагают первый выпуск базового сертификата сроком действия 3 или 12 месяцев бесплатно. Стоимость продления начинается примерно от $50, в зависимости от опций.

Еще вариант — получить сертификат центра сертификации Let’s Encrypt. Его выпуск и продление совершенно бесплатны. Сертификат выпускается сроком на 3 месяца, зато процесс его выпуска, продления и установки в веб-сервер Apache полностью автоматизированы.

Здесь же мы опишем выпуск т.н. самоподписанного сертификата.

Создадим SSL сертификат

Укажите PEM pass phrase — пароль приватного ключа. На остальные вопросы можете отвечать как угодно, кроме Common Name (eg, YOUR name) []: — тут следует указать доменное имя сайта. В результате в домашней папке появится два файла myserver.key — приватный ключ и myserver.pem — публичный сертификат. Что бы Apache при загрузке не спрашивал непонятно у кого пароль приватного ключа, снимем его

Переместим их в безопасное место и настроим права доступа только для root

Переходим к настройкам Apache, включаем поддержку SSL

И настраиваем доступ по HTTPS. Открываем файл конфигурации сайта по-умолчанию

и приводим его к такому виду

Резервное копирование

Резервное копирование в PosеgreSQL выполняется утилитой pg_dump . Подробная справка по синтаксису выводится командой

Например, что бы сделать резервную копию базы base1c нужно выполнить такую команду

Для восстановления базы из архива, созданного командой pg_dump используется команда pg_restore . Подробная справка по синтаксису

Пример восстановления базы base1c из бэкапа base1c.sql.tar

Бэкап сохранился в домашней папке пользователя, это лучше, чем ничего, но хранить резервные копии баз данных на самом сервере баз данных слишком самоуверенно. Когда-то давно резервные копии делали на ленты стримера и увозили их куда подальше в надежное место. Сейчас для резервного копирования используются сетевые или облачные NAS хранилища, расположенные в таком надежном месте. В нашем примере копирование будет выполняться на сетевое NAS хранилище, включенное в домен под сетевым именем nas .

Обеспечим к нему доступ нашего пользователя. В Active Directory создадим пользователя backupuser, дадим ему права на запись в папке, где будем складывать резервные копии.

Примонтируем сетевую папку, сначала создадим точку монтирования

затем настроим автоматическое монтирование при старте системы, для чего сначала создадим файл-мандат на подключение к сетевому хранилищу

Прописываем в файл параметры подключения

и скроем его от посторонних глаз

Пропишем подключение сетевой папки при старте системы

в конец файла добавляем

и даем команду примонтировать все, что мы прописали

В результате в точке монтировали /mnt/nas должна появиться папка сетевого хранилища \\nas\backups , куда можно складывать резервные копии.

Для выполнения автоматического резервного копирования нужно создать скрипт, который будет запускаться по расписанию демоном cron . К счастью, писать этот скрипи самому не нужно, в сообществе PostgreSQL уже написано много таких скриптов, рекомендую использовать канонический скрипт.

Используйте скрипт pg_backup_rotated.sh , он сохраняет резервные копии за несколько дней, автоматически удаляя старые копии.

Создайте в домашней папке пользователя файл pg_backup_rotated.sh и разместите в нем скрипт по указанной выше ссылке.

Установите для этого файла признак исполняемости

В том же каталоге создайте файл настроек pg_backup.config и заполните его как по указанной выше ссылке. Все настройки можно оставить по умолчанию, кроме

Проверьте работоспособность, выполните команду

Если не увидели никаких ошибок и процесс копирования пошел, то все сделано правильно, можно поставить задачу в расписание. Редактируем задания для демона cron

добавляем строчку с заданием

Резервное копирование будет выполняться в 19:00 с понедельника по пятницу.

Источник

Читайте также:  Foxit reader для mac os
Оцените статью