2019

Материал из wiki.nntc.nnov.ru
Версия от 23:39, 29 января 2020; Vovan (обсуждение | вклад) (1С Кластер)
Перейти к навигации Перейти к поиску

Zimbra

Текущая свежая версия

8.8.12_GA

wget https://files.zimbra.com/downloads/8.8.12_GA/zcs-8.8.12_GA_3794.UBUNTU18_64.20190329045002.tgz

Грабли по этой версии

zmstat.out заполняется бесконечно, валит ошибку

(https://forums.zimbra.org/viewtopic.php?t=65930&start=10)

Use of uninitialized value $line in pattern match (m//) at /opt/zimbra/libexec/zmstat-io line 76

login as zimbra and stop zmstat: zmstatctl stop

edit

/opt/zimbra/libexec/zmstat-io

replace all

Device:

with

Device
rm /opt/zimbra/zmstat/zmstat.out

restart zmstat:

zmstatctl start


лечение: в файле

/opt/zimbra/libexec/zmsyslogsetup

на 190 строке найти строчку

s|(^destination mail [b]{[/b] file\("/var/log/mail"\); };)|#$1|;

и заменить её на эту:

s|(^destination mail [b]\{[/b] file\("/var/log/mail"\); };)|#$1|;

удалить zmstat.out

rm /opt/zimbra/zmstat/zmstat.out
zmlogswatchctl is not running

лечение:

touch /var/log/zimbra-stats.log
chown zimbra:zimbra /var/log/zimbra-stats.log
/etc/init.d/zimbra restart
Ошибки служб в веб интерфейсе

...при попытке обновить, выдаёт ошибку:

Message: system failure: Unable to read logger stats Error code: service.FAILURE Method: GetLoggerStatsRequest Details:soap:Receiver

лечение (от рута):

apt-get install rsyslog
/opt/zimbra/libexec/zmsyslogsetup

переключиться на пользователя zimbra и перезапустить:

su - zimbra
zmcontrol stop
zmcontrol start

возможно еще это:

su - zimbra
zmsshkeygen
zmupdateauthkeys

Переименовать основной домен

# mind su - zimbra
zmprov -l md olddomain.com zimbraDomainRenameInfo ""
zmprov -l md olddomain.com zimbraDomainStatus active
zmprov fc domain olddomain.com
zmcontrol restart
zmprov -l rd old.domain.com new.domain.com
zmlocalconfig

Получить список ящиков

# mind su - zimbra
zmprov -l gaa

Выгрузка бэкапов ящиков

cat backup.sh

#!/bin/bash
# mind su - zimbra
for i in $(zmprov -l gaa)
do
echo $i
zmmailbox -z -m $i getRestURL "//?fmt=tgz" > $i.tar.gz
done

Загрузка аккаунтов из бэкапов

cat create_restore_script.sh

#!/bin/bash
echo '#!/bin/bash'>restore.sh
for i in $(cat boxes)
do
echo "su - zimbra -c \"zmprov ca $i SuperPasswd1234565;zmmailbox -z -m $i postRestURL '//?fmt=tgz&resolve=replace' /mnt/oldzimbra/opt/zimbra/BKP/$i.tar.gz\";">>restore.sh
done


Изменить размер сообщения

su zimbra -
zmprov mcf zimbraMtaMaxMessageSize 40960000
zmprov mcf zimbraFileUploadMaxSize 40960000
zmstatctl restart

Безопасность

не светить стандартные порты наружу
сменить имя пользователя admin на другое


Синхронизация расписания

1 площадка

2 площадка

@echo off
"C:\_PATH_TO_\pscp.exe" -P _PORT_ -i "C:\_PATH_TO_\nntc2.ppk" "C:\_PATH_TO_\FILE.xls" _USER_@_IP_:"/home/_USER_/p2.xls"
echo y | "C:\_PATH_TO_\PLINK.EXE" -P 2019 -i "C:\_PATH_TO_\nntc2.ppk" _USER_@89.109.54.20 -m "C:\_PATH_TO_\sync_cmd.txt"
cls
echo "PROVERTE RASPISANIE NA SAYTE!"
pause


ubuntu server openbox

источник

Установить пакеты:

sudo apt install openbox openbox-menu xvfb x11vnc

Сгенерить пароль:

x11vnc -storepasswd

результат формирования пароля будет в файле

/root/.vnc/passwd

Добавить до "exit 0" в /etc/rc.local

Xvfb :1 -extension GLX -screen 0 1600x900x16&
sleep 5s; DISPLAY=:1 /usr/bin/openbox-session&
x11vnc -dontdisconnect -display :1 -auth /var/run/lightdm/root/:0 -notruecolor -noxfixes -shared -forever -rfbport 5999 -bg -rfbauth /root/.vnc/passwd

1С Кластер

Грабли

Не стартует сервис srv1c83 после переименования машины

sed -i 's/nntc-cluster-1c/1c-cluster/g' /home/usr1cv8/.1cv8/1C/1cv8/reg_1541/1CV8Clsto.lst

Установка ОС

Выбрана свержая LTS версия xubuntu 18.04 внутри ProxMoxVE через virt-viewer по протоколу spice

Нюансы установки

ставим в режиме uefi
ставим с авторазметкой
локали уже должны быть готовы для установки postgres (эти шаги по инструкциям можно пропустить)

Установка Postgres 1C

Авторизовываемся на

https://releases.1c.ru

Скачиваем это браузером

https://releases.1c.ru/version_file?nick=AddCompPostgre&ver=10.9-5.1C&path=AddCompPostgre\10_9_5_1C\postgresql_10.9_5.1C_amd64_deb.tar.bz2
https://releases.1c.ru/version_file?nick=AddCompPostgre&ver=10.9-5.1C&path=AddCompPostgre\10_9_5_1C\postgresql_10.9_5.1C_amd64_addon_deb.tar.bz2

Скачиваем и устанавливаем пакет

wget http://security.ubuntu.com/ubuntu/pool/main/i/icu/libicu55_55.1-7ubuntu0.4_amd64.deb
sudo dpkg -i libicu55_55.1-7ubuntu0.4_amd64.deb

Добавляем репозиторий нужной версией postgresql-common, обновляем бд пакетов и устанавливаем postgresql-common

sudo su
echo 'deb http://apt.postgresql.org/pub/repos/apt/ bionic-pgdg main' > /etc/apt/sources.list.d/pgdg.list
exit
sudo apt-get update
sudo apt-get install postgresql-common

Устанавливаем скачанные с сайта 1с пакеты в таком порядке (предварительно перейдя в каталог)

cd Загрузки/postgresql-10.9-5.1C_amd64_deb/
sudo dpkg -i libpq5_10.9-5.1C_amd64.deb
sudo dpkg -i postgresql-client-10_10.9-5.1C_amd64.deb
sudo dpkg -i postgresql-10_10.9-5.1C_amd64.deb


Блокируем обновление пакетов

sudo apt-mark hold libpq5
sudo apt-mark hold postgresql-client-10
sudo apt-mark hold postgresql-10

Настройка Postgres 1C после установки

Меняем параметры первого конфига (именно столько пробелов и табов. Меняем для того, чтобы поменять пароль)

sed -i 's/local   all             postgres                                peer/local   all             postgres                                trust/g' /etc/postgresql/10/main/pg_hba.conf

Меняем параметры второго конфига

sed -i "s/listen_addresses = '\*'/listen_addresses = 'localhost'/g" /etc/postgresql/10/main/postgresql.conf

Рестартуем сервис

sudo service postgresql restart

Меняем пароль

psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD 'SuperSECUREPassw0rd_HERE'"

Меняем параметры первого конфига на md5

sed -i 's/local   all             postgres                                trust/local   all             postgres                                md5/g' /etc/postgresql/10/main/pg_hba.conf

Рестартуем сервис

sudo service postgresql restart

Установка сервера 1С

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

sudo apt-get install imagemagick unixodbc ttf-mscorefonts-installer libgsf-1-114 libwebkitgtk-3.0-0

Авторизуемся на сайте 1с и скачиваем пакеты сервера 1с:предприятия по этой ссылке

https://releases.1c.ru/version_file?nick=Platform83&ver=8.3.15.1565&path=Platform\8_3_15_1565\deb64_8_3_15_1565.tar.gz

Распаковываем и переходим в каталог с deb-пакетами

cd /home/administrator/Загрузки/deb64_8_3_15_1565/

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

sudo dpkg -i 1c-enterprise83-common_8.3.15-1565_amd64.deb
sudo dpkg -i 1c-enterprise83-common-nls_8.3.15-1565_amd64.deb
sudo dpkg -i 1c-enterprise83-server_8.3.15-1565_amd64.deb
sudo dpkg -i 1c-enterprise83-server-nls_8.3.15-1565_amd64.deb
sudo dpkg -i 1c-enterprise83-ws_8.3.15-1565_amd64.deb
sudo dpkg -i 1c-enterprise83-ws-nls_8.3.15-1565_amd64.deb

Меняем владельца каталога /opt/1C:

sudo chown -R usr1cv8:grp1cv8 /opt/1C

Запускаем сервер 1С:

sudo service srv1cv83 start

Установка платформы 1С

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

Скачиваем пакеты после авторизации на сайте 1с отсюда:

Толстый клиент

https://releases.1c.ru/version_file?nick=Platform83&ver=8.3.15.1565&path=Platform\8_3_15_1565\client_8_3_15_1565.deb64.tar.gz
cd /home/administrator/Загрузки/client_8_3_15_1565.deb64/
sudo dpkg -i *.deb

Будут ошибки на тему установки thin-client - традиционные многолетние ошибки. Видимо до сих пор воспроизводятся


Тонкий клиент

https://releases.1c.ru/version_file?nick=Platform83&ver=8.3.15.1565&path=Platform\8_3_15_1565\thin.client_8_3_15_1565.deb64.tar.gz

Если уже был установлен толстый клиент, то внутри каталога с deb-пакетами уже имеются пакеты thin.client и установка пакетов из комплекта тонкого клиента будет бессмысленной и вызовет те же традиционные многолетние ошибки.

Сервер

https://releases.1c.ru/version_file?nick=Platform83&ver=8.3.15.1565&path=Platform\8_3_15_1565\deb64_8_3_15_1565.tar.gz

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

Установка сервиса aksusbd

Сразу спойлер: будет работать только локально. Если нужна сетевая часть - не нужно ставить это. Нужно ставить пакет от этерсофт

Скачиваем отсюда

https://sentinelcustomer.gemalto.com/sentineldownloads/?s=&c=End+User&p=Sentinel+LDK&o=Linux&t=all&l=all#

Распаковываем и устанавливаем

cd /home/administrator/Загрузки/Sentinel_LDK_Ubuntu_DEB_Run-time_Installer/
sudo dpkg -i aksusbd_7.100-1_amd64.deb

ОБЯЗАТЕЛЬНО ПЕРЕЗАГРУЗИТЬСЯ

Проверка работы

sudo service aksusbd status

Проверка открытых портов

sudo netstat -anp | grep hasp

Можно увидеть, что 475 порт не открыт. А это сетевой хасп.

Удаляем

sudo apt-get remove aksusbd


Пакет от этерсофт

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

sudo apt install dkms

Далее скачать пакет отсюда

ftp://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/18.04/dkms-aksparlnx_7.40-alt1ubuntu_all.deb
ftp://download.etersoft.ru/pub/Etersoft/HASP/last/Ubuntu/18.04/haspd_7.90-eter2ubuntu_i386.deb

Установить

sudo dpkg -i haspd_7.90-eter2ubuntu_i386.deb
sudo dpkg -i dkms-aksparlnx_7.40-alt1ubuntu_all.deb

Запуск демона

service haspd start

Проверка открытых портов

sudo netstat -anp | grep hasp

Настройка и включение файрвола

ufw allow 22
ufw allow 80
ufw allow 443
ufw allow 1540
ufw allow 1541
ufw allow 1543
ufw allow 1560:1591/tcp
ufw enable

UDP over TCP over SSH

http://zarb.org/~gc/html/udp-in-ssh-tunneling.html

Apache2

header.Add("Access-Control-Allow-Headers", "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With")

1. Найти строку "#LoadModule headers_module modules/mod_headers.so" и убрать первый символ "#"

2. В раздел "<Directory />" (также при наличии Location, Files) вписать следующее (соответственно указав области доступа более конкретно.):

<IfModule mod_headers.c>
   Header always set Access-Control-Allow-Origin "*"
   Header always set Access-Control-Max-Age "1000"
   Header always set Access-Control-Allow-Headers "X-Requested-With, Content-Type, Origin, Authorization, Accept, Client-Security-Token, Accept-Encoding"
   Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
</IfModule>

RewriteEngine On                  
RewriteCond %{REQUEST_METHOD} OPTIONS 
RewriteRule ^(.*)$ $1 [R=200,L] 

Ссылки

Установка postgres

ошибка с локалью из-за точки в начале файла, которую видит только mcedit (ERROR: no ecoding defined in /usr/share/hunspell/ru_RU.aff, ignoring)

HASP

HASP инструкция

Немного ZFS

Затюнить основные моменты на PVE:

Отключить сжатие

zfs set compression=off rpool/data

Отключить sync

zfs set sync=disabled rpool/data

Просмотр параметров volume (внимание! - отсутствие слэша в начале - это важно)

zfs get all rpool/data/vm-100-disk-1

Аналогично - просмотр параметров пула (внимание! - слэш в начале - это важно)

zfs get all /rpool/data/

Создать volume с нужным размером блока (например, с размером блока равным размеру блока в ext4 гостевой машины по умолчанию)

zfs create -o volblocksize=4K -V 100g rpool/data/vm-100-disk-1

Проверить за собой

zfs get all rpool/data/vm-100-disk-1 | grep volblocksize

Создание дисков средствами вебинтерфейса проксмокс происходит с volblocksize=8K. Это не всегда удобно. Поэтому после создания виртмашины можно пересоздать так:

Удаляем диск

zfs destroy rpool/data/vm-100-disk-1

И создаём заново (как уже выше приводилась команда) - выключенная виртмашина ничего не заметит :-)

zfs create -o volblocksize=4K -V 100g rpool/data/vm-100-disk-1