Часовой пояс Екатеринбург, обновить документацию
This commit is contained in:
parent
ff75fc3a41
commit
d309465fe2
|
|
@ -2,6 +2,10 @@
|
||||||
|
|
||||||
Список пополняется по мере работы с заданиями 2 и 3.
|
Список пополняется по мере работы с заданиями 2 и 3.
|
||||||
|
|
||||||
|
## Общие установки (уже зафиксированы)
|
||||||
|
- Часовой пояс на всех машинах: `Asia/Yekaterinburg` (Екатеринбург) —
|
||||||
|
переменная EXAM_TZ вверху каждого скрипта настройки.
|
||||||
|
|
||||||
## HQ-SW (задание 1)
|
## HQ-SW (задание 1)
|
||||||
- По tasks.md HQ-SW — виртуальный коммутатор; кто и чем его настраивает (это
|
- По tasks.md HQ-SW — виртуальный коммутатор; кто и чем его настраивает (это
|
||||||
отдельная ВМ? EcoRouter? встроенный коммутатор гипервизора?) — уточнить.
|
отдельная ВМ? EcoRouter? встроенный коммутатор гипервизора?) — уточнить.
|
||||||
|
|
|
||||||
48
README.md
48
README.md
|
|
@ -64,16 +64,24 @@ isp.sh -> HQ-RTR -> BR-RTR -> BR-FW -> HQ-SRV -> BR-SRV -> HQ-CLI
|
||||||
|
|
||||||
## 4. Какие переменные обязательны
|
## 4. Какие переменные обязательны
|
||||||
|
|
||||||
Каждый скрипт в начале содержит блок переменных с комментариями. Пустые
|
Адресация вычисляется автоматически по схеме из `tools/subnets.py` —
|
||||||
(`""`) при запуске приведут к сообщению «Заполните переменные...» и exit 1.
|
вверху файлов настроек остаётся одна (или две) переменных:
|
||||||
Универсальные, которые заполняются на почти всех машинах:
|
|
||||||
- `*_IF` — имя сетевого интерфейса (`ip -br link` чтобы посмотреть);
|
| Файлы | Переменная | Описание |
|
||||||
- `*_ADDR`, `*_NET` — адреса из вашего расчёта (формат `адрес/префикс`);
|
|---|---|---|
|
||||||
- `*_GW` — шлюзы (адреса соседних роутеров);
|
| `zadanie1/hq-*.sh` | `HQ_BASE="10.10.100.0/24"` | базовая сеть HQ: VLAN100=+0/27, VLAN200=+32/28, VLAN999=+48/29; роутер=+1, сервер=+2 |
|
||||||
- в задании 3 в `isp.sh` — `TLS_CERT_FILE`/`TLS_KEY_FILE` после доставки
|
| `zadanie1/br-*.sh` | `BR_BASE="10.10.200.0/24"` | базовая сеть BR: BR-SRV=+0/28, линк к BR-FW=+32/30; BR-FW=+1, BR-SRV=+2, BR-RTR=+1 на линке |
|
||||||
сертификатов (MANUAL.md).
|
| `zadanie1/hq-srv.sh` | `HQ_CLI_IP=""` | единственную непрогнозируемую: адрес HQ-CLI после выдачи DHCP (вписать потом) |
|
||||||
Порядок заполнения адресов: сначала `tools/subnet-calc.sh`, потом скрипты
|
| `zadanie1/isp.sh` | `HOSTNAME_FQDN` | имя ISP — уже проставлено типовое `isp.au-team.irpo` |
|
||||||
в порядке раздела 3.
|
|
||||||
|
Константы заданий (не править без нужды): линки ISP 172.16.1.0/28 и
|
||||||
|
172.16.2.0/28 (ISP=.1, роутер=.2), туннель GRE 10.10.10.0/30 (.1/.2),
|
||||||
|
DNS 8.8.8.8, порт SSH 2027, пароли P@ssw0rd, часовой пояс Asia/Yekaterinburg.
|
||||||
|
Интерфейсы: enp0s3=1-й NIC (WAN/к-ISP/серверные), enp0s8/enp0s9 = LAN.
|
||||||
|
Проверить свою схему можно командой:
|
||||||
|
```
|
||||||
|
python3 tools/subnets.py hq 10.10.100.0/24 && python3 tools/subnets.py br 10.10.200.0/24
|
||||||
|
```
|
||||||
|
|
||||||
## 5. Скрипты проверки (check/)
|
## 5. Скрипты проверки (check/)
|
||||||
|
|
||||||
|
|
@ -99,13 +107,25 @@ GUI). Такие места помечены в скриптах `ДЕЛАЕТС
|
||||||
|
|
||||||
## 7. Проверка результата
|
## 7. Проверка результата
|
||||||
|
|
||||||
- Каждый скрипт заканчивает блоком «=== Самопроверка ... ===» — там и в
|
- Каждый скрипт настройки заканчивает блоком «=== Самопроверка ... ===» —
|
||||||
интерактиве печатаются команды проверки (ping, dig, chronyc, lpstat,
|
команды проверки (ping, dig, chronyc, lpstat, fail2ban-client status,
|
||||||
fail2ban-client status, docker ps и т.д.).
|
docker ps и т.д.).
|
||||||
- `bash -n <скрипт>` — проверка синтаксиса правок, которую вы делаете
|
- `bash -n <скрипт>` — проверка синтаксиса правок, которую вы делаете
|
||||||
при заполнении переменных.
|
при заполнении переменных.
|
||||||
|
- `check/<машинa>.sh` — полный отчёт (см. раздел 5).
|
||||||
|
|
||||||
## 8. Если что-то не работает
|
## 8. Как я (ассистент) могу посмотреть состояние ваших машин
|
||||||
|
|
||||||
|
Двух путей — по выбору:
|
||||||
|
- **SSH-доступ** (проще всего, напрямую): машины должны быть доступны
|
||||||
|
с этой рабочей станции по сети (пароль/ключ). Тогда я смогу запускать
|
||||||
|
скрипты и читать вывод как на месте.
|
||||||
|
- **Без SSH, через git (достаточно для проверки):** запускаете check-скрипт
|
||||||
|
на машине, логи `check_<машина>_<задание>.txt` складываете в папку
|
||||||
|
`reports/` в репо и коммитите; я прочитаю их здесь и скажу, что чинить.
|
||||||
|
Быстро: `git add reports && git commit -m "логи проверки" && git push`.
|
||||||
|
|
||||||
|
## 9. Если что-то не работает
|
||||||
|
|
||||||
- Сначала check-скрипт соответствующей машины — он покажет, что именно FAIL.
|
- Сначала check-скрипт соответствующей машины — он покажет, что именно FAIL.
|
||||||
- Затем откройте `TROUBLESHOOT.md` — частые проблемы и решения по темам
|
- Затем откройте `TROUBLESHOOT.md` — частые проблемы и решения по темам
|
||||||
|
|
|
||||||
|
|
@ -30,7 +30,7 @@ BR_IF="" # интерфейс к BR-RTR
|
||||||
BR_NET="" # адрес ISP на этом интерфейсе, адрес/префикс
|
BR_NET="" # адрес ISP на этом интерфейсе, адрес/префикс
|
||||||
HQ_RTR_ADDR="" # адрес HQ-RTR на линке (для пинга)
|
HQ_RTR_ADDR="" # адрес HQ-RTR на линке (для пинга)
|
||||||
BR_RTR_ADDR="" # адрес BR-RTR на линке (для пинга)
|
BR_RTR_ADDR="" # адрес BR-RTR на линке (для пинга)
|
||||||
EXAM_TZ="" # ожидаемый часовой пояс (например Europe/Moscow)
|
EXAM_TZ="" # ожидаемый часовой пояс (Asia/Yekaterinburg по месту экзамена)
|
||||||
|
|
||||||
main () {
|
main () {
|
||||||
echo "=== Проверка задания 1: ISP ==="
|
echo "=== Проверка задания 1: ISP ==="
|
||||||
|
|
|
||||||
12
install.log
Normal file
12
install.log
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
[17:43:45 2026-11-06] FETCHING Version 2.46.4
|
||||||
|
[17:43:45 2026-11-06] CREATING /home/kimochiw/.spicetify
|
||||||
|
[17:43:45 2026-11-06] DOWNLOADING https://github.com/spicetify/cli/releases/download/v2.46.4/spicetify-2.46.4-linux-amd64.tar.gz
|
||||||
|
[17:43:53 2026-11-06] EXTRACTING /home/kimochiw/.spicetify/spicetify.tar.gz
|
||||||
|
[17:43:53 2026-11-06] SETTING EXECUTABLE PERMISSIONS TO /home/kimochiw/.spicetify/spicetify
|
||||||
|
[17:43:53 2026-11-06] REMOVING /home/kimochiw/.spicetify/spicetify.tar.gz
|
||||||
|
[17:43:53 2026-11-06] APPENDING /home/kimochiw/.spicetify to PATH in /home/kimochiw/.bashrc
|
||||||
|
[17:43:53 2026-11-06] APPENDING /home/kimochiw/.spicetify to PATH in /home/kimochiw/.bash_profile
|
||||||
|
[17:43:53 2026-11-06] spicetify v2.46.4 was installed successfully to /home/kimochiw/.spicetify
|
||||||
|
[17:43:53 2026-11-06] Open a new terminal or reload your shell profile to use spicetify:
|
||||||
|
[17:43:53 2026-11-06] source "/home/kimochiw/.bash_profile"
|
||||||
|
[17:43:53 2026-11-06] Then run 'spicetify --help' to get started
|
||||||
|
|
@ -40,7 +40,7 @@ FRR_DAEMONS="/etc/frr/daemons"
|
||||||
DNS_FW="" # внешний DNS для BR-FW (необязательно, например 8.8.8.8)
|
DNS_FW="" # внешний DNS для BR-FW (необязательно, например 8.8.8.8)
|
||||||
|
|
||||||
# --- Прочее ---
|
# --- Прочее ---
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -46,7 +46,7 @@ FRR_CONF="/etc/frr/frr.conf"
|
||||||
FRR_DAEMONS="/etc/frr/daemons"
|
FRR_DAEMONS="/etc/frr/daemons"
|
||||||
|
|
||||||
# --- Прочее ---
|
# --- Прочее ---
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
IPTABLES_SERVICE="iptables" # ПРОВЕРИТЬ
|
IPTABLES_SERVICE="iptables" # ПРОВЕРИТЬ
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,7 @@ SSH_BANNER_FILE="/etc/ssh/exam-banner"
|
||||||
SSHD_CONF="/etc/ssh/sshd_config"
|
SSHD_CONF="/etc/ssh/sshd_config"
|
||||||
|
|
||||||
# --- Прочее ---
|
# --- Прочее ---
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
|
|
||||||
# ============ Проверка заполнения переменных ============
|
# ============ Проверка заполнения переменных ============
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@ HOSTNAME_FQDN="hq-cli.au-team.irpo" # таблица 3, запись hq-cli.
|
||||||
|
|
||||||
CLI_IF="enp0s3" # 1-й NIC — к HQ-SW (VLAN 200), адрес по DHCP
|
CLI_IF="enp0s3" # 1-й NIC — к HQ-SW (VLAN 200), адрес по DHCP
|
||||||
|
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
|
|
||||||
# ============ Проверка заполнения переменных ============
|
# ============ Проверка заполнения переменных ============
|
||||||
|
|
|
||||||
|
|
@ -61,7 +61,7 @@ DHCP_DOMAIN="au-team.irpo"
|
||||||
# (адрес HQ-SRV для DNS-опции DHCP берётся из HQ_BASE-схемы автоматически)
|
# (адрес HQ-SRV для DNS-опции DHCP берётся из HQ_BASE-схемы автоматически)
|
||||||
|
|
||||||
# --- Прочее ---
|
# --- Прочее ---
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
FORWARD_CONF="/etc/sysctl.d/99-ip-forward.conf" # перезаписывается целиком
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
IPTABLES_SERVICE="iptables" # ПРОВЕРИТЬ
|
IPTABLES_SERVICE="iptables" # ПРОВЕРИТЬ
|
||||||
|
|
|
||||||
|
|
@ -47,7 +47,7 @@ DNS_UPSTREAM="8.8.8.8" # forwarder: любой общий DNS по зад
|
||||||
# Все адреса DNS-записей, кроме HQ_CLI_IP, берутся из HQ_BASE/BR_BASE-схемы
|
# Все адреса DNS-записей, кроме HQ_CLI_IP, берутся из HQ_BASE/BR_BASE-схемы
|
||||||
|
|
||||||
# --- Прочее ---
|
# --- Прочее ---
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
BR_BASE="10.10.200.0/24" # базовая сеть офиса BR (для DNS-записей BR-устройств)
|
BR_BASE="10.10.200.0/24" # базовая сеть офиса BR (для DNS-записей BR-устройств)
|
||||||
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
NM_CONF_DIR="/etc/NetworkManager/system-connections"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ BR_NET="172.16.2.1/28" # (сеть по заданию 172.16.2.0/28, .1 = ISP
|
||||||
DNS_ISP="8.8.8.8" # внешний DNS, если DHCP провайдера его не выдаёт (можно заменить)
|
DNS_ISP="8.8.8.8" # внешний DNS, если DHCP провайдера его не выдаёт (можно заменить)
|
||||||
|
|
||||||
# Часовой пояс — поставьте пояс места проведения экзамена
|
# Часовой пояс — поставьте пояс места проведения экзамена
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# Служба сохранения iptables на РЕД ОС 8 — проверить на стенде (ПРОВЕРИТЬ:
|
# Служба сохранения iptables на РЕД ОС 8 — проверить на стенде (ПРОВЕРИТЬ:
|
||||||
# пакет iptables-services и имя службы)
|
# пакет iptables-services и имя службы)
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ CHRONY_PACKAGE="chrony"
|
||||||
CHRONY_SERVICE="chronyd"
|
CHRONY_SERVICE="chronyd"
|
||||||
NTP_SERVER="" # адрес ISP по которому до него достучаться (без префикса)
|
NTP_SERVER="" # адрес ISP по которому до него достучаться (без префикса)
|
||||||
|
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# ============ Проверка заполнения переменных ============
|
# ============ Проверка заполнения переменных ============
|
||||||
MISSING=()
|
MISSING=()
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
||||||
DOMAN="au-team.irpo"
|
DOMAN="au-team.irpo"
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
DOMAN="au-team.irpo"
|
DOMAN="au-team.irpo"
|
||||||
|
|
||||||
# --- 3. NFS (автомонтирование в /mnt/nfs) ---
|
# --- 3. NFS (автомонтирование в /mnt/nfs) ---
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
||||||
|
|
||||||
# --- 2. RAID0 ---
|
# --- 2. RAID0 ---
|
||||||
|
|
|
||||||
|
|
@ -26,7 +26,7 @@ STRATUM="5" # стратум сервера по задан
|
||||||
|
|
||||||
ALLOW_NETS="172.16.1.0/28 172.16.2.0/28" # сети линков к роутерам (по заданию)
|
ALLOW_NETS="172.16.1.0/28 172.16.2.0/28" # сети линков к роутерам (по заданию)
|
||||||
|
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# ============ Проверка заполнения переменных ============
|
# ============ Проверка заполнения переменных ============
|
||||||
MISSING=()
|
MISSING=()
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
ISO_DIR="/mnt/iso" # точка монтирования Additional.iso
|
||||||
|
|
||||||
# --- 1. Импорт пользователей ---
|
# --- 1. Импорт пользователей ---
|
||||||
|
|
|
||||||
|
|
@ -13,7 +13,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# --- 4. Доверие корневому сертификату ---
|
# --- 4. Доверие корневому сертификату ---
|
||||||
CA_ROOT_FILE="" # путь к скопированному корневому сертификату
|
CA_ROOT_FILE="" # путь к скопированному корневому сертификату
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ if [[ $EUID -ne 0 ]]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
# ================= ПЕРЕМЕННЫЕ (заполните перед запуском) =================
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# --- 4. Центр сертификации (openssl; ПРОВЕРИТЬ: по заданию рекомендуются
|
# --- 4. Центр сертификации (openssl; ПРОВЕРИТЬ: по заданию рекомендуются
|
||||||
# отечественные алгоритмы — стандартный openssl гост-подписи не умеет,
|
# отечественные алгоритмы — стандартный openssl гост-подписи не умеет,
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,7 @@ HTPASSWD_FILE="/etc/nginx/exam-web.htpasswd"
|
||||||
TLS_CERT_FILE="" # путь к сертификату на этом ISP (web/docker domain, SAN)
|
TLS_CERT_FILE="" # путь к сертификату на этом ISP (web/docker domain, SAN)
|
||||||
TLS_KEY_FILE="" # путь к связанному ключу
|
TLS_KEY_FILE="" # путь к связанному ключу
|
||||||
|
|
||||||
EXAM_TZ="Europe/Moscow" # проверить на экзамене
|
EXAM_TZ="Asia/Yekaterinburg" # по заданию — Екатеринбург
|
||||||
|
|
||||||
# ============ Проверка заполнения переменных ============
|
# ============ Проверка заполнения переменных ============
|
||||||
MISSING=()
|
MISSING=()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue