Настройка CentOS 7 для сервера 1С 8.3

После установки CentOS 7 приступим к ее настройке.

Для настройки системы воспользуемся подключением по SSH используя клиент PuTTy или другой SSH клиент.

Начальная настройка CentOS 7

Обновим систему:

yum -y update

Так как CentOS 7 у нас гостевая ОС ESXi 6.5, то нужно установить VMware tools:

yum install open-vm-tools

Для дальнейшего удобства установим файловый менеджер Midnight Commander:

yum -y install mc

В CentOS 7 minimal все утилиты, такие как dig, host, nslookup, теперь включены в пакет bind-utils, поэтому установим этот пакет:

yum -y install bind-utils

Отключаем SELinux:

mcedit /etc/sysconfig/selinux

меняем значение SELINUX=enforcing на SELINUX=disabled . Сохраняем и выходим.
Для вступления изменений в силу перезагрузим ОС:

reboot

Настройка сетевого интерфейса сервера

Сервер 1С:Предприятие будет находится в пределах локальной сети и его вполне можно использовать с отключенным файрволом без большой угрозы безопасности.
Отключаем firewalld:

systemctl stop firewalld
systemctl disable firewalld

В файле /etc/hosts не должно быть записей формата localhost.localdomian или относящихся к IPv6, в случае отсутствия DNS-сервера, в нем должно быть прописано четкое соответствие IP-адрес сервера – FQDN имя – короткое имя. Пример правильного файла hosts:

mcedit /etc/hosts

127.0.0.1 localhost

192.168.xxx.yyy SERVER_NAME.DOMAIN.LOCAL SERVER_NAME

Что бы новые параметры вступили в силу нужно перезагрузить сервер.

reboot

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

Подключение репозиториев

Для инсталляции различных пакетов ПО необходимо подключить репозитории в CentOS. Добавим популярный EPEL:

yum -y install epel-release

Настройка и синхронизация времени

Настроим время сервера. Узнать, какое время на сервере можно с помощью команды date:

date

Чтобы сменить часовой пояс на +3, воспользуемся специальной утилитой, которая входит в комплект CentOS 7:

timedatectl set-timezone Europe/Moscow

Установим утилиту для синхронизации времени chrony:

yum install -y chrony

Запускаем chrony и добавляем в автозагрузку:

systemctl start chronyd
systemctl enable chronyd

Проверяем:

systemctl status chronyd
date

Установка дополнительных пакетов

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

iftop показывает в режиме реального времени загрузку сетевого интерфейса:

yum -y install iftop

Диспетчер задач htop:

yum -y install htop

Установим также необходимые пакеты отсутствующие в поставке:

yum install policycoreutils-python wget bzip2 ntp net-tools unixODBC ImageMagick fontconfig-devel

Скачиваем необходимые шрифты и устанавливаем их:

wget http://li.nux.ro/download/nux/dextop/el7/x86_64/msttcore-fonts-installer-2.6-1.noarch.rpm 
yum install msttcore-fonts-installer-2.6-1.noarch.rpm

Публикация общей папки

Для удобства установим Samba и добавим в автозагрузку:

yum -y install samba samba-client samba-common
systemctl enable smb
systemctl enable nmb

Далее создадим папку, к которую дадим общий доступ и настроим Samba:

sudo mkdir -p /home/public
mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
mcedit /etc/samba/smb.conf

Настроим Samba внеся в smb.conf следующий текст:

[global]
workgroup = WORKGROUP
server string = Samba Server %v
netbios name = Server1C
security = user
map to guest = bad user
dns proxy = no
guest account = nobody
browseable = yes

log file = /var/log/samba/log.%m
max log size = 50

load printers = no
printing = bsd
printcap name = /dev/null

[public]
comment = FS
path = /home/public
readonly = no
guest ok = yes
public = yes
guest only = yes
writable = yes

Добавляем Samba в автозагрузку:

systemctl enable smb
systemctl enable nmb

Если не отключать Firewall, то нужно добавить следующие правила:

firewall-cmd --permanent --zone=public --add-service=samba
firewall-cmd --reload

Опубликуем папку:

cd /home/public
chmod -R 0755 /home/public
chown -R nobody:nobody /home/public

Установка веб сервера

Для работы сервисов, имеющих веб интерфейс, установим веб сервер Apache:

yum install -y httpd

Добавляем apache в автозагрузку:

systemctl enable httpd

Запускаем apache в CentOS 7:

systemctl start httpd

Проверяем, запустился ли сервер:

netstat -tulnp | grep httpd

Установим PHP:

yum install -y php

Установим популярные модули для php:

yum install -y php-mysql php-mbstring php-mcrypt php-devel php-xml php-gd

Выполним перезапуск apache:

systemctl restart httpd

Базовая настройка CentOS 7 закончена

Настройка CentOS 7 для сервера 1С 8.3: 13 комментариев

  1. Скажите. Вы когда-нибудь пробовали на такой связке формировать этикетки со штрих кодами. Интересуют управляемые формы. Суть в том, что на сервере нужна компонента, которая «нарисует» штрих код и отправит его клиенту. Такой компоненты там нет, и при попытке распечатать любой ШК клиенту выйдет сообщение об ошибке «Ошибка подключения компоненты».
    В случае сервера на винде там все понятно, а вот под центом не могу найти где взять эту компоненту и как ее поставить.

    1. Нет, не пробовал. У меня на данный момент похожая проблема с криптопровайдером. Под линуксом криптопровайдер не цепляется, тоже вываливается ошибка подключения динамической библиотеки. Я не уверен, но в Вашем случае скорее всего проблема подключения COM объектов, которые, как я понял, не поддерживаются в Linux. Возможно надо найти обработчик под CentOS.

        1. Нет, забил. В итоге из-за ЭДО пришлось сервер 1с выносить отдельно на виртуальную машину с windows 10 с более частотным процессором

          1. А что конкретно не работало? 1С отчетность для сдачи в ФНС ФСС и прочее или что-то свое?

          2. Да, 1С отчетность. Мне нужно было чтобы сервер раздавал эцп, чтобы сотрудники не имели физ доступа к ней, но не сложилось

  2. Добрый день.
    Для чего служат пакеты из команды
    yum install policycoreutils-python wget bzip2 ntp net-tools unixODBC ImageMagick fontconfig-devel ?
    Как определили их необходимость?

    1. policycoreutils-python — инструменты для работы с selinux, но selinux обычно отрубают;
      wget — консольный менеджер загрузок, в статье используется для скачивания файла;
      bzip2 — консольный архиватор;
      ntp — сервер времени, думаю не нужен так как установлен chrony;
      net-tools — сетевые утилиты например ifconfig;
      unixODBC — компоненты для доступа к данным на основе ODBC, если нужно выгрузить/загрузить данные в сторонние базы не обязательно 1С;
      ImageMagick — набор инструментов для работы с изображениями, нужен в тонком клиенте и наверно в web тоже;
      fontconfig-devel — для работы со шрифтами, в данном случае с майкрософтовскими.
      В целом статья полезна, сам настраиваю таким способом.

  3. Да, 1С отчетность. Мне нужно было чтобы сервер раздавал эцп, чтобы сотрудники не имели физ доступа к ней, но не сложилось

  4. Создаётся впечатление, что все авторы, описывающие установку CentOS в качестве сервера, не владеют ситуацией. Первое, что они предлагают, отключить SELinux и Firewall. А слабо, настроить SELinux? А где открытие портов? Для работы в с ОС Windows, коих подавляющее большинство в сетях, нужна Samba, а для её работы необходимо открыть порты 137, 138, 139, 443 и 445. Для возможности соединения с сервером, через Web интерфейс, необходимо открыть порт 80. Для удалённого управления сервером необходимо настроить SSH, а для исключения возможности несанкционированного доступа к серверу, поменять порт SSH, или на худой коней открыть порт по умолчанию и сформировать надёжный пароль, или доступ по публичному ключу. Где все это??? Я даже на домашнем сервере всё это проделал и не отключал SELinux, а настроил её, включил разрешения для работы Samba и SSH, но только те, которые используются в домашней сети.

    1. Спасибо за комментарий. Вы правы, мне этот «блог» нужен для того что бы инфа, которую я собрал в инете была под рукой и эти инструкции делал прежде всего для себя, естественно после успешного внедрения, и если здесь нет инфы о настройке защиты, значит я не нашёл нормальную инструкцию, а сам я ни разу не линуксоид. Да и в моем случае это работает в закрытом контуре сети, поэтому не стал разбираться с защитой. Если дополните будет очень хорошо!

      1. Соглашусь. Если сервер работает только внутри сети и не смотрит наружу, то смысла настраивать все порты и SE не вижу. Больше мороки.

        1. По моему я где-то написал, что не настраивал защиту по причине работы сервера в закрытой сети

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *