#admin_FAQ
7 subscribers
31 links
Download Telegram
Настройка отправки почты на Bitrix VM

Создаем файл .msmtprc:
nano /root/.msmtprc

Содержимое .msmtprc:
account bitrix
host communigate.домен.ру
port 587
from bitrix@домен.ру
keepbcc on
auth on
user bitrix@домен.ру
password *ПАРОЛЬ*
tls on
tls_starttls on
tls_certcheck off

Задаем права на файл, это действие обязательно, поскольку MSMTP не будет работать, если права больше чем 600:
chmod 600 /root/.msmtprc

Прежде чем внедрить настройки в PHP, убедитесь что всё работает должным образом. Для этого создайте текстовый файл, содержащий простое электронное письмо:
nano /root/sample_email.txt

Вносим указанное содержимое:
echo -e "From: Me  \n\
To: You \n\
Subject: Тест \n\
\n\
Тест

Отправляем письмо:
cat /root/sample_email.txt | msmtp --debug -a bitrix@домен.ру получатель@домен.ру

Установить симлинк в каталог /etc:
ln /root/.msmtprc /etc/msmtprc

Задаем пользователя файла от которого запускается PHP:
chown bitrix:bitrix /etc/msmtprc

Настраиваем php, открываем файл:
nano /etc/php.d/bitrixenv.ini

Перезапускаем php:
systemctl restart httpd


Задаем параметр:
sendmail_path = "/usr/bin/msmtp -C /etc/msmtprc -a bitrix -t" 

Тестируем отправку:
php -r "mail('получатель@домен.ру', 'Test', 'Test');"
#l2tp
#Диагностика l2tp-подключения
/usr/lib/NetworkManager/nm-l2tp-service --debug
#монтирование smb cifs для определенного пользователя и группы
#cifs
//alt-samba-srv1/1C/exchange_app12 /home/usr1cv8/exchange_app12 cifs user,rw,credentials=/root/.smbclient,iocharset=utf8,nofail,_netdev,uid=485,gid=504 0 0


Для указания владельца, который будет назначен для примонтированного каталога, используем id -u <имя пользователя> и id -g <имя группы>
#Рекомендуемые приложения для установки на linux server
htop
telnet
traceroute
#DistKontrolUSB Client в виде сервиса
#usb

скачать dkclientx86_64
wget http://www.distkontrol.ru/usbclient/dkclientx86_64


назначить право выполнения
chmod +x ./dkclientx86_64


переместить
mv dkclientx86_64 /usr/sbin


создайть текстовый файл для службы:
nano /etc/systemd/system/dkclient.service

содержимое:
[Unit]
Description=DistKontrolUSBClient
Requires=NetworkManager.service
After=NetworkManager.service
[Service]
ExecStartPre=/bin/sh -c 'logger DistKontrolUSBClient settling...;sleep 1s;logger DistKontrolUSBClient settled'
ExecStart=/usr/sbin/dkclientx86_64
Type=idle
[Install]
WantedBy=multi-user.target


запустить службу:
systemctl daemon-reload
systemctl enable --now dkclient


добавить usb-хаб:
/usr/sbin/dkclientx86_64 -t 'MANUAL HUB ADD,xx.xx.xx.xx:17602'

вывести список доступных usb-устройств:
/usr/sbin/dkclientx86_64 -t 'list'

включить автоподключение доступных usb-устройств
/usr/sbin/dkclientx86_64 -t 'AUTO USE HUB,distkontrolusb64'

/usr/sbin/dkclientx86_64 -t 'AUTO USE All,distkontrolusb64'


подключить нужное usb-устройство:
/usr/sbin/dkclientx86_64 --control='USE,niousb.2112'
#принтер
#установка принтеров

rundll32 printui.dll,PrintUIEntry /q /dl /n "HP_LJ_MFP_M527_2"
PNPUTIL /add-driver \\samba-srv\drivers\drivers\hpprndrv\*.inf /subdirs /install
rundll32 printui.dll,PrintUIEntry /gd /if /b "HP_LJ_MFP_M527_2" /f %windir%\inf\ntprint.inf /r "http://xx.xx.xx.xx:631/printers/HP_LJ_MFP_M527_2" /m "HP Universal Printing PCL 6"
#Увеличение томов lvm
pvcreate /dev/sdf
pvdisplay
vgextend pg_probackup /dev/sdf
vgdisplay
lvextend -r -l +100%FREE /dev/pg_probackup/job_db
lvdisplay
Channel name was changed to «#admin_FAQ»
#pg_probackup

ssh-copy-id postgres@db1-1c-prod

/opt/pgpro/ent-17/bin/pg_probackup add-instance -B /mnt/backup/db1-1c-prod -D /mnt/instance_1/ --instance=Buh_UPCB --remote-host=db1-1c-prod --remote-user=postgres

mkdir /mnt/backup/Buh_UPCB/backups
mkdir /mnt/backup/Buh_UPCB/wal

mkdir /var/log/pg_probackup/db1-1c-prod

/opt/pgpro/ent-17/bin/pg_probackup backup -B /mnt/backup/db1-1c-prod -b FULL --instance=Buh_UPCB --stream --remote-host=db1-1c-prod --remote-user=postgres -U postgres -d Buh_UPCB -p 5432 --compress-level=2 --compress-algorithm lz4 --log-filename=Buh_UPCB_backup.log --log-level-file=log --log-directory=/var/log/pg_probackup/db1-1c-prod

/opt/pgpro/ent-17/bin/pg_probackup backup -B /mnt/backup/db1-1c-prod -b DELTA --instance=Buh_UPCB --stream --remote-host=db1-1c-prod --remote-user=postgres -U postgres -d Buh_UPCB -p 5432 --compress-level=2 --compress-algorithm lz4 --log-filename=Buh_UPCB_backup.log --log-level-file=log --log-directory=/var/log/pg_probackup/db1-1c-prod

/opt/pgpro/ent-17/bin/pg_probackup show -B /mnt/backup/db1-1c-prod --instance=Buh_UPCB
#Время
#Проверка синхронизации времени windows
#сервер времени wondows
w32tm /stripchart /computer:clock.isc.org /dataonly /samples:3
#chronyc
#синхронизация времени linux
pool xx.xx.xx.xx iburst prefer
pool xx.xx.xx.xx iburst

* iburst — отправлять несколько пакетов (повышает точность);
pool - адреса серверов, с которыми наш сервер будет сверять время;
server — указывает на выполнение синхронизации с сервером, а не пулом серверов;
prefer — указывает на предпочитаемый сервер
server 127.127.1.0 — позволит в случае отказа сети Интернет брать время из своих системных часов

Проверить синхронизацию времени:
chronyc tracking
#автомонтирование cifs через fstab
nano /root/.smbclient

username=myname
password=dPassw0rd
domain=domain.local


chmod 600 /root/.smbclient
chown root:root /root/.smbclient


nano /etc/fstab


//192.168.1.10/share /mnt cifs user,rw,credentials=/root/.smbclient 0 0
#уменьшить размер лога
#logs

journalctl --vacuum-size=1M
#Увеличение размера раздела
#growpart
#resize2fs

apt-get install gdisk
apt-get install cloud-utils-growpart
growpart /dev/sdb 1
resize2fs /dev/sdb1
#nano
#редаактор по умолчанию
export EDITOR=nano
👍1🔥1😁1
#proxy
#nodejs

Необходимо указать proxy в NodeJs:
npm config set proxy http://user:password@host:8080


удалить:
npm config rm proxy
npm config rm https-proxy
👍1🔥1😁1🤯1
Error 401: permission denied - invalid PVE ticket

systemctl restart pvedaemon pveproxy
#Полезные cкрипты и возможности Postgres

Список и статусы всех служб postgres
systemctl | grep postgres


Определить порты postgres
netstat -tulnp | grep 54


Запустить команду от пользователя postgres
su - postgres


Список баз
psql -p 5433 -c '\l';

Список баз c определением размеров
psql -p 5433 -c '\l+';

Список баз c определением размеров от пользователя postgres
su - postgres -c "psql -p 5432 -c '\l+';"


Определить папку БД
psql -p 5433 -c 'show data_directory';


Применить конфигурацию без перезапуска сервера
select pg_reload_conf();


Переименовать БД
ALTER DATABASE "OLDBASE" RENAME TO "NEWBASE";


Завершение всех соединений с БД
SELECT pg_terminate_backend (pg_stat_activity.pid) FROM pg_stat_activity WHERE pg_stat_activity.datname = 'НАЗВАНИЕ_БАЗЫ';
#samba configuration for domain

[global]
security = ads
realm = TEST-DOMAIN.RU
workgroup = WORKGROUP
netbios name = SAMBA-SRV1
template shell = /bin/bash
kerberos method = system keytab
wins support = no
winbind use default domain = yes
winbind enum users = no
winbind enum groups = no
template homedir = /home/TEST-DOMAIN.RU/%U
idmap config * : range = 200000-2000200000
idmap config * : backend = sss
machine password timeout = 0
# скрываем нечитаемые файлы
hide unreadable = yes
# скрываем недоступные общие
access based share enum = yes
# отображение права доступа в Windows на права доступа Linux
nt acl support = yes
# включение режима наследования ACL от каталога, в котором создаются новые файлы и каталоги. Без этого параметра дополнитель>
inherit acls = yes
# включение режима наследования владельца каталога, в котором создаётся файл. Без этого параметра владельцем будет становить>
inherit owner = yes
# включение наследования unix mode разрешений
inherit permissions = yes
# Наследование прав от родительского каталога в NT acls на файловую систему.
map acl inherit = yes

directory mask = 0775
create mask = 0775

[1C]
path = /mnt/share/1C
write list = acronis usr1cv8 @admin_srv @FILE_DomainUsers
valid users = acronis, usr1cv8, @admin_srv, @FILE_DomainUsers
public = no
writable = yes
browseable = no

[buh]
path = /mnt/share/docs/buh
write list = acronis @admin_srv @FILE_Бухгалтерия_RW
valid users = acronis, @admin_srv, @FILE_Бухгалтерия_RW
public = yes
writable = yes
browseable = yes
👍1