* '''Зависимости''' dnf install epel-release -y dnf install htop mc t1utils fontconfig freetype libgsf unixODBC lcms2 -y * '''PostgreSQL-1C 12''' rpm --import http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO dnf config-manager --add-repo http://repo.postgrespro.ru/1c-archive/pg1c-12.2/centos/8/os/x86_64/rpms/ dnf install postgrespro-1c-12-server postgrespro-1c-12-contrib -y /opt/pgpro/1c-12/bin/pg-setup initdb systemctl enable postgrespro-1c-12 --now sudo -u postgres /opt/pgpro/1c-12/bin/psql postgres \password postgres \quit nano /var/lib/pgpro/1c-12/data/pg_hba.conf host all all 0.0.0.0/0 md5 nano /var/lib/pgpro/1c-12/data/postgresql.conf listen_addresses = '*' # what IP address(es) to listen on; max_connections = 500 # (change requires restart) shared_buffers = 4GB # min 128kB temp_buffers = 256MB # min 800kB work_mem = 512MB # min 64kB maintenance_work_mem = 1024MB # min 1MB dynamic_shared_memory_type = posix # the default is the first option bgwriter_lru_maxpages = 400 # max buffers written/round, 0 disables bgwriter_lru_multiplier = 4.0 # 0-10.0 multiplier on buffers scanned/round effective_io_concurrency = 2 # 1-1000; 0 disables prefetching synchronous_commit = off # synchronization level; commit_delay = 1000 # range 0-100000, in microseconds commit_siblings = 5 # range 1-1000 max_wal_size = 4GB min_wal_size = 2GB checkpoint_completion_target = 0.9 # checkpoint target duration, 0.0 - 1.0 random_page_cost = 1.3 # same scale as above effective_cache_size = 8GB logging_collector = off # Enable capturing of stderr and csvlog log_timezone = 'Europe/Moscow' autovacuum = on # Enable autovacuum subprocess? 'on' autovacuum_max_workers = 4 # max number of autovacuum subprocesses autovacuum_naptime = 20s # time between autovacuum runs row_security = off datestyle = 'iso, dmy' timezone = 'Europe/Moscow' lc_messages = 'ru_RU.UTF-8' # locale for system error message lc_monetary = 'ru_RU.UTF-8' # locale for monetary formatting lc_numeric = 'ru_RU.UTF-8' # locale for number formatting lc_time = 'ru_RU.UTF-8' # locale for time formatting default_text_search_config = 'pg_catalog.russian' max_locks_per_transaction = 256 # min 10 escape_string_warning = off standard_conforming_strings = off systemctl restart postgrespro-1c-12 * '''1c''' wget https://cloud.augin.ru/apps/sharingpath/as/distr/1c/rpm64_8_3_16_1296.tar.gz --no-check-certificate mkdir ~/1c_distr tar xvfz rpm64_8_3_16_1296.tar.gz -C ~/1c_distr cd ~/1c_distr dnf install *.rpm chown -R usr1cv8:grp1cv8 /opt/1C systemctl enable srv1cv83 systemctl start srv1cv83 systemctl status srv1cv83 * '''шрифты''' wget https://cloud.augin.ru/s/WMkjbE6Wo9HLcqa/download --no-check-certificate -O Core_Fonts.zip unzip Core_Fonts.zip -d /usr/share/fonts/ fc-cache –fv * '''авторизация AD''' [[Настройка SAMBA в CentOS8]] В ад надо создать пользователя для авторизации сервера 1с (linux1cuser) cmd: setspn -A usr1cv8/s1c linux1cuser #setspn -A usr1cv8/s1c.augin.ru linux1cuser Keytab можно получить как в винде так и влинуксе. В винде(на котроллере домена): ktpass -kvno 12 -ptype KRB5_NT_PRINCIPAL -princ usr1cv8/s1c.augin.ru@AUGIN.RU -mapuser linux1cuser -pass PASSWORDforLinux1cuser -out usr1cv8.keytab Или прям на сервере 1с ktutil ktutil: addent -password -p usr1cv8/s1c@AUGIN.RU -k 12 -e rc4-hmac Password for usr1cv8/s1c@AUGIN.RU: PASSWORDforLinux1cuser ktutil: wkt /opt/1C/v8.3/x86_64/usr1cv8.keytab ktutil: q chown usr1cv8:grp1cv8 /opt/1C/v8.3/x86_64/usr1cv8.keytab chmod 600 /opt/1C/v8.3/x86_64/usr1cv8.keytab так же необходимо добавить шифрование rc4-hmac к поддерживаемым nano /etc/krb5.conf.d/crypto-policies [libdefaults] permitted_enctypes = aes256-cts-hmac-sha1-96 aes256-cts-hmac-sha384-192 camellia256-cts-cmac aes128-cts-hmac-sha1-96 aes128-cts-hmac-sha256-128 camellia128-cts-cmac rc4-hmac kinit -k -t /opt/1C/v8.3/x86_64/usr1cv8.keytab usr1cv8/s1c@AUGIN.RU * '''WEB''' dnf install httpd -y dnf install php php-common php-pgsql php-gd php-xml php-mbstring -y systemctl enable httpd --now systemctl enable --now php-fpm wget https://github.com/vrana/adminer/releases/download/v4.7.6/adminer-4.7.6.php -O /var/www/html/index.php mkdir /var/www/html/dengi/ /opt/1C/v8.3/x86_64/webinst -apache24 -wsdir dengi -dir '/var/www/html/dengi' -connStr 'Srvr="s1c.augin.ru";Ref="dengi";' -confPath /etc/httpd/conf/httpd.conf nano /var/www/html/dengi/default.vrd systemctl restart httpd * '''Включение логов''' mkdir /home/usr1cv8/.1cv8/1C/1cv8/conf/ touch /home/usr1cv8/.1cv8/1C/1cv8/conf/logcfg.xml chown usr1cv8:grp1cv8 /home/usr1cv8/.1cv8/1C/1cv8/conf/ -R mkdir /var/log/1c mkdir /var/log/1c/dumps chown -R usr1cv8:grp1cv8 /var/log/1c nano /home/usr1cv8/.1cv8/1C/1cv8/conf/logcfg.xml * lic wget https://cloud.augin.ru/s/2pndNgk4dLYQBji/download --no-check-certificate -O dumps.zip wget https://cloud.augin.ru/s/oi4nNr4CTCfiNgd/download --no-check-certificate -O install_hasp_centos78.sh chmod +x install_hasp_centos78.sh sed -i "s/\r//g" install_hasp_centos78.sh ./install_hasp_centos78.sh * ошибка access_ok убираем первый параметр в строке с access_ok * backup cat /opt/backup.sh BAK_DIR="/home/disk1/sql_bases/s1c-x" DATE=`date +%d.%m.%Y-%H%M` ssh root@bs "mkdir $BAK_DIR/$DATE" for base in ` su -l postgres -c "/opt/pgpro/1c-12/bin/psql -U postgres -Aqt -c 'select datname from pg_database;'"` do su -l postgres -c "/opt/pgpro/1c-12/bin/pg_dump $base" | gzip > /var/lib/pgpro/bak/$base.sql.gz scp "/var/lib/pgpro/bak/$base.sql.gz" "root@bs:$BAK_DIR/$DATE/$base.sql.gz" #ssh root@bs "gzip > $BAK_DIR/$DATE/$base.sql.gz" done ssh root@bs "/home/disk1/sql_bases/clean.sh $BAK_DIR" chmod +x /opt/backup.sh mkdir /var/lib/pgpro/bak/ ssh-copy-id root@bs cat /etc/cron.d/backup-postgresql # backup postgres 0 1 * * * root /opt/backup.sh cat /opt/restore.sh su postgres -c "/opt/pgpro/1c-12/bin/psql -c 'DROP DATABASE pg_base_name;'" su postgres -c "/opt/pgpro/1c-12/bin/psql -c 'CREATE DATABASE pg_base_name;'" su postgres -c "gunzip -c pg_base_name.sql.gz | /opt/pgpro/1c-12/bin/psql pg_base_name" cat /home/disk1/sql_bases/clean.sh #!/bin/bash if [ $# -lt 1 ] then echo Something wrong with parameters exit fi x=1 # Счетчик файлов path=$1 #"/home/disk1/sql_bases/s1c-nd" # Путь к удаляемым файлам for i in `ls -t $path` do if [ $x -le 14 ] then ((x++)) continue fi rm -rf $path/$i done * lic apt install libc6-i386 -y wget http://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.04/haspd-modules_7.90-eter2ubuntu_amd64.deb wget http://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/Ubuntu/16.04/haspd_7.90-eter2ubuntu_amd64.deb dpkg -i haspd*.deb systemctl status haspd