Add Joplin, old Mac, and Fedora WiFi runbooks; simplify JA3 Whisky scripts and hotspot recovery.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
ahauimix
2026-06-19 22:26:33 +03:00
parent 1938b7c743
commit 4bc9629a09
381 changed files with 3442 additions and 773 deletions

View File

@@ -0,0 +1,237 @@
# Передача файлов Mac → Fedora (Bluetooth)
**Откуда:** этот Mac (Apple Silicon / основной)
**Куда:** MacBook Pro Intel с Fedora 43 (устройство Bluetooth: **fedora**, `60:FB:42:7D:2D:66`)
**Проверено:** 2026-06-16
Связанные документы: [README.md](./README.md), [RUNBOOK.md](./RUNBOOK.md) (WiFi BCM4322).
---
## 1. Быстрый путь (канон)
### Шаг 1 — Fedora: включить приём **до** отправки
Blueman (иконка Bluetooth в трее) → **«Принять файл»** / **Receive a File**.
Должен появиться диалог **«Ожидание входящего файла…»**.
Без этого Mac отправит файл, но на Fedora **ничего не произойдёт** — диалога не будет.
### Шаг 2 — Mac: отправить
```bash
# delivery-архив Wi-Fi fix (по умолчанию)
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh
# любой другой файл
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh /path/to/file.tar.gz
```
В окне **Bluetooth File Exchange** выбрать **fedora****Send** / **Отправить**.
### Шаг 3 — Fedora: проверить
Файл обычно в `~/Downloads` или `~/Bluetooth`:
```bash
ls -la ~/Downloads/
```
---
## 2. RCA: почему «отправилось», а на Fedora тишина
| Что видели | Причина |
|------------|---------|
| AppleScript пишет «send выполнена» | macOS **не запускает** OBEX-приём на Linux автоматически |
| Окно на Mac открылось, Fedora молчит | На Fedora **не был включён** «Принять файл» |
| `bnep0` / PAN не связан с файлами | Передача файлов — **OBEX**, не PAN |
| Устройство paired, но не Connected | На Fedora: Bluetooth on, Trust Mac, оставить в зоне видимости |
**Правило:** сначала **приём на Fedora**, потом **отправка с Mac**.
---
## 3. Предварительные условия
### Сопряжение (один раз)
**Fedora:**
```bash
bluetoothctl
power on
agent on
default-agent
scan on
# найти Mac по имени, затем:
pair <MAC_ЭТОГО_MAC>
trust <MAC_ЭТОГО_MAC>
```
**Mac:** Системные настройки → Bluetooth → подтвердить сопряжение.
### Перед каждой передачей
**Mac** — fedora в **Connected**:
```bash
system_profiler SPBluetoothDataType | grep -A6 "Connected:"
# должно быть: fedora (60:FB:42:7D:2D:66)
```
**Fedora** — Blueman установлен:
```bash
sudo dnf install blueman bluez-obexd
blueman-applet &
```
---
## 4. Подробно: Fedora (приём)
### Способ A — Blueman GUI (рекомендуется)
1. Иконка Bluetooth в трее (Blueman).
2. **Принять файл** / **Receive a File**.
3. Ждать диалог «Ожидание входящего файла…».
4. **Не закрывать** до завершения передачи.
### Способ B — скрипт-подсказка
Если скрипт уже есть на Fedora (после первой передачи или скопирован вручную):
```bash
bash prepare-receive-fedora.sh
```
Скрипт напомнит про Blueman и будет ждать файл в `~/Downloads`.
Сам по себе **не заменяет** пункт «Принять файл» в Blueman (без `obexpushd`).
### Куда попадает файл
| Среда | Путь |
|-------|------|
| GNOME + Blueman | `~/Downloads` |
| KDE | `~/Downloads` или `~/Bluetooth` |
| obexpushd | каталог из `-p` |
---
## 5. Подробно: Mac (отправка)
### Способ A — скрипт (рекомендуется)
```bash
# Wi-Fi fix archive (готовый)
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh
# произвольный файл
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh ~/Desktop/myfile.tar.gz
# другое имя BT-устройства (если не «fedora»)
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh myfile.zip my-fedora
```
Скрипт проверяет, что **fedora** в Connected, и открывает **Bluetooth File Exchange**.
### Способ B — вручную (без скрипта)
1. Finder → файл → ПКМ → **Поделиться****Bluetooth**
**или** открыть `/System/Applications/Utilities/Bluetooth File Exchange.app`
2. Перетащить файл в окно / File → Send File…
3. Выбрать **fedora****Send**
### Способ C — из терминала (то же GUI)
```bash
open -a "Bluetooth File Exchange" /path/to/file.tar.gz
```
Дальше вручную выбрать **fedora****Send**.
---
## 6. Что отправлять (WiFi fix)
Готовый архив для Fedora:
```text
docs/old_mac/deliverable/fedora-bcm4322-wifi-fix.tar.gz
```
Пересобрать:
```bash
bash ~/code/local_machine/docs/old_mac/scripts/build-delivery-archive.sh
```
После приёма на Fedora:
```bash
cd ~/Downloads
tar xzf fedora-bcm4322-wifi-fix.tar.gz
cd fedora-bcm4322-wifi-fix
sudo bash install-bcm4322-firmware-fedora.sh
sudo reboot
```
---
## 7. Диагностика
### Mac
```bash
system_profiler SPBluetoothDataType | grep -A8 "Connected:"
pgrep -lf "Bluetooth File Exchange"
```
### Fedora
```bash
bluetoothctl devices
bluetoothctl info 60:FB:42:7D:2D:66 # MAC этого Mac — подставить свой
systemctl --user status obex
journalctl -b -u bluetooth | tail -30
ls -la ~/Downloads/ ~/Bluetooth/ 2>/dev/null
```
### Типичные ошибки
| Симптом | Действие |
|---------|----------|
| Нет диалога приёма на Fedora | Blueman → **Принять файл** **до** Send на Mac |
| «fedora не в Connected» на Mac | Fedora: BT on, Trust, не спать |
| Передача оборвалась | Файл < 50 MB надёжнее; повторить с шага 1 |
| Blueman нет в трее | `blueman-applet &` |
| obex не стартует | `sudo dnf install bluez-obexd blueman` |
---
## 8. Альтернативы Bluetooth
Если BT-файлы не идут:
| Способ | Когда |
|--------|-------|
| **USB-флешка** | Самый надёжный offline |
| **USB tether** телефон → Fedora, `scp` с Mac в локалку | Если есть общая сеть |
| **Телефон как посредник** | Mac → телефон → Fedora (USB/BT) |
---
## 9. Порядок действий (шпаргалка)
```text
[FEDORA] Blueman → Принять файл → «Ожидание…»
[MAC] bash …/send-to-fedora-bluetooth.sh
[MAC] Bluetooth File Exchange → fedora → Send
[FEDORA] Файл в ~/Downloads
[FEDORA] tar xzf … && sudo bash install-….sh
```
---
*docs/old_mac — local_machine*

88
docs/old_mac/README.md Normal file
View File

@@ -0,0 +1,88 @@
# Old Mac — Fedora 43 на MacBook Pro Intel
Контур для **старого MacBook Pro (Intel)** с Fedora 43: WiFi Broadcom BCM4322, offline firmware, передача файлов с основного Mac.
---
## Документы
| Документ | Назначение |
|----------|------------|
| **[REMOTE_ACCESS.md](./REMOTE_ACCESS.md)** | **SSH и удалённое управление (хотспот / BT PAN)** |
| **[BLUETOOTH_FILE_TRANSFER.md](./BLUETOOTH_FILE_TRANSFER.md)** | Передача файлов Mac → Fedora по Bluetooth |
| [RUNBOOK.md](./RUNBOOK.md) | WiFi BCM4322: диагностика, firmware, PAN |
| [deliverable/fedora-bcm4322-wifi-fix.tar.gz](./deliverable/fedora-bcm4322-wifi-fix.tar.gz) | Архив для установки WiFi на Fedora |
---
## Удалённое управление (SSH)
Оба на хотспоте телефона; прямой ping часто блокируется **изоляцией клиентов** → обход через **Bluetooth PAN**.
```bash
# Mac (один раз)
bash ~/code/local_machine/docs/old_mac/scripts/setup-remote-mac.sh ВАШ_ЛОГИН_FEDORA
bash ~/code/local_machine/docs/old_mac/scripts/build-remote-access-archive.sh
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh \
~/code/local_machine/docs/old_mac/deliverable/fedora-remote-access.tar.gz
# Fedora (после приёма архива)
sudo bash setup-ssh-fedora.sh ВАШ_ЛОГИН
# Mac — подключение
bash ~/code/local_machine/docs/old_mac/scripts/connect-fedora.sh
```
Подробно: [REMOTE_ACCESS.md](./REMOTE_ACCESS.md)
---
**Порядок:** сначала приём на Fedora, потом отправка с Mac.
1. **Fedora:** Blueman → **«Принять файл»** → «Ожидание входящего файла…»
2. **Mac:**
```bash
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh
```
3. **Mac:** Bluetooth File Exchange → **fedora** → **Send**
Подробно: [BLUETOOTH_FILE_TRANSFER.md](./BLUETOOTH_FILE_TRANSFER.md)
---
## WiFi fix (после приёма архива)
```bash
cd ~/Downloads
tar xzf fedora-bcm4322-wifi-fix.tar.gz
cd fedora-bcm4322-wifi-fix
sudo bash install-bcm4322-firmware-fedora.sh
sudo reboot
```
---
## Скрипты (на этом Mac)
```bash
# Отправить файл (по умолчанию — Wi-Fi архив)
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh /path/to/anyfile.tar.gz
# Пересобрать delivery-архив
bash ~/code/local_machine/docs/old_mac/scripts/build-delivery-archive.sh
bash ~/code/local_machine/docs/old_mac/scripts/download-bcm4322-offline-bundle.sh
```
На Fedora перед приёмом: `scripts/prepare-receive-fedora.sh` (подсказка; Blueman обязателен).
---
## Железо
- **Fedora Mac:** MacBook Pro Intel, BCM4322, Fedora 43, ядро `6.17.1-300.fc43.x86_64`
- **BT-устройство:** fedora (`60:FB:42:7D:2D:66`)
---
*local_machine / docs/old_mac*

View File

@@ -0,0 +1,221 @@
# Удалённое управление Fedora MacBook с Mac (хотспот телефона)
**Схема:** оба ноутбука на WiFi хотспоте Redmi; прямой SSH часто **блокируется изоляцией клиентов** — обход через Bluetooth PAN.
**Проверено:** 2026-06-16 · `fedora.local``10.23.120.30`, ping с Mac **не проходит** (AP isolation).
---
## 1. Быстрый путь
### A. Один раз — Mac
```bash
bash ~/code/local_machine/docs/old_mac/scripts/setup-remote-mac.sh ВАШ_ЛОГИН_FEDORA
bash ~/code/local_machine/docs/old_mac/scripts/build-remote-access-archive.sh
bash ~/code/local_machine/docs/old_mac/scripts/send-to-fedora-bluetooth.sh \
~/code/local_machine/docs/old_mac/deliverable/fedora-remote-access.tar.gz
```
### B. Один раз — Fedora (после приёма архива по BT)
Логин: **`p`**
```bash
cd ~/Downloads
tar xzf fedora-remote-access.tar.gz
cd fedora-remote-access
sudo bash setup-ssh-fedora.sh p
sudo bash setup-bt-pan-fedora.sh
```
### C. Подключение с Mac
```bash
bash ~/code/local_machine/docs/old_mac/scripts/bootstrap-ssh-fedora.sh # один раз, копирует ключ
bash ~/code/local_machine/docs/old_mac/scripts/connect-fedora.sh # дальше без пароля
```
Пароль хранится локально: `~/.config/old_mac/fedora.env` (см. `fedora.env.example`).
### D. RDP (графический стол, xrdp :3389)
На Fedora уже может быть xrdp. С Mac:
```bash
brew install freerdp # один раз
bash ~/code/local_machine/docs/old_mac/scripts/connect-rdp-fedora.sh
```
Или **Microsoft Remote Desktop** (App Store): PC `fedora.local` или `10.23.120.30`, port **3389**, user **`p`**.
RDP и SSH одинаково **не достучатся**, пока нет L3 между Mac и Fedora (изоляция хотспота / нет BT PAN).
---
## 2. Диагностика сети хотспота
```bash
bash ~/code/local_machine/docs/old_mac/scripts/discover-fedora.sh
```
| Результат | Значение |
|-----------|----------|
| `fedora.local` резолвится | Fedora в той же WiFi сети |
| `ping: ok` | Можно SSH по LAN (`ssh fedora-mbp`) |
| `ping: FAIL` + mDNS есть | **Изоляция клиентов** на телефоне → §4 BT PAN |
| `ssh:22 open` | `connect-fedora.sh` должен работать |
Текущая типичная картина:
```text
Mac: 10.23.120.84/24
Gateway: 10.23.120.139 (телефон)
Fedora: 10.23.120.30 (fedora.local)
Ping Mac→Fedora: FAIL (изоляция)
```
---
## 3. Путь LAN (если ping проходит)
### 3.1 Отключить изоляцию на Redmi Note 14
Настройки → Режим модема / Точка доступа → **Дополнительно**:
- **AP isolation** / **Изоляция клиентов****Выкл**
- **Разрешить устройствам в сети видеть друг друга** → **Вкл** (если есть)
Переподключить WiFi на **обоих** Mac. Проверка:
```bash
ping -c2 fedora.local
bash ~/code/local_machine/docs/old_mac/scripts/connect-fedora.sh
```
### 3.2 SSH на Fedora
```bash
sudo bash setup-ssh-fedora.sh USER
```
### 3.3 SSH с Mac
```bash
ssh fedora-mbp # ~/.ssh/config
# или
bash connect-fedora.sh
```
---
## 4. Путь Bluetooth PAN (обход изоляции хотспота)
Прямой линк **Mac ↔ Fedora** поверх Bluetooth, минуя WiFi хотспота.
### 4.1 Fedora — PAN-сервер
```bash
sudo bash setup-bt-pan-fedora.sh
```
Остаётся работать в фоне (`bt-network -s nap pan0`), IP Fedora: **172.20.99.1/24**.
### 4.2 Mac — подключить PAN
1. **Bluetooth** → устройство **fedora****Connect**
(профиль «Сеть» / Network Access Point / NAP — если спросит)
2. Настроить IP:
```bash
bash ~/code/local_machine/docs/old_mac/scripts/setup-bt-pan-mac.sh
```
Mac получит **172.20.99.2/24**, ping Fedora:
```bash
ping -c2 172.20.99.1
```
### 4.3 SSH
```bash
ssh fedora-mbp-bt
# или
bash ~/code/local_machine/docs/old_mac/scripts/connect-fedora.sh
```
---
## 5. Альтернатива: Internet Sharing (Mac → Fedora)
Если PAN с ручными IP капризничает:
1. **Mac:** Системные настройки → Общий доступ → **Общий интернет**
- Раздать от: **WiFi**
- Кому: **Bluetooth PAN**
2. **Fedora:** Bluetooth → подключиться к Mac как к сети
3. Fedora получит `192.168.2.x`, Mac обычно `192.168.2.1`
4. На Fedora узнать IP: `ip -4 addr show bnep0`
5. Добавить в Mac `~/.ssh/config` HostName с этим IP или `connect-fedora.sh`
---
## 6. Скрипты
| Скрипт | Где | Назначение |
|--------|-----|------------|
| `setup-remote-mac.sh` | Mac | SSH-ключ + `~/.ssh/config` |
| `build-remote-access-archive.sh` | Mac | Архив для Fedora |
| `send-to-fedora-bluetooth.sh` | Mac | Передать архив |
| `discover-fedora.sh` | Mac | Найти Fedora, проверить LAN |
| `connect-fedora.sh` | Mac | SSH (LAN или BT) |
| `setup-ssh-fedora.sh` | Fedora | sshd + authorized_keys |
| `setup-bt-pan-fedora.sh` | Fedora | BT PAN сервер |
| `setup-bt-pan-mac.sh` | Mac | IP на bnep0 |
---
## 7. SSH config (на Mac после setup-remote-mac)
```ssh-config
Host fedora-mbp old-mac-fedora fedora
User ВАШ_ЛОГИН
HostName fedora.local
IdentityFile ~/.ssh/id_ed25519_fedora
Host fedora-mbp-bt
HostName 172.20.99.1
...
```
---
## 8. Устранение неполадок
| Проблема | Решение |
|----------|---------|
| Permission denied (publickey) | На Fedora: `setup-ssh-fedora.sh`, проверить `mac_pubkey.txt` |
| Connection refused :22 | `sudo systemctl start sshd` |
| No route to host (WiFi) | Изоляция хотспота → §4 BT PAN |
| Нет bnep0 на Mac | Fedora `setup-bt-pan-fedora.sh` + Bluetooth Connect |
| Fedora WiFi ещё без firmware | BT PAN или BT file transfer для архивов |
---
## 9. Дерево решений
```mermaid
flowchart TD
A[Нужен SSH на Fedora] --> B{ping fedora.local?}
B -->|ok| C[setup-ssh-fedora + ssh fedora-mbp]
B -->|fail| D[Изоляция хотспота]
D --> E{Можно выкл. AP isolation?}
E -->|да| C
E -->|нет| F[setup-bt-pan-fedora + setup-bt-pan-mac]
F --> G[ssh fedora-mbp-bt]
```
---
*docs/old_mac — local_machine*

116
docs/old_mac/RUNBOOK.md Normal file
View File

@@ -0,0 +1,116 @@
# Fedora 43 на MacBook Pro (Intel) — BCM4322 WiFi runbook
**Железо:** MacBook Pro Intel, Broadcom **BCM4322**, драйвер ядра **b43**
**ОС:** Fedora 43 Workstation, рабочее ядро `6.17.1-300.fc43.x86_64`
**Проверено:** 2026-06-16
**Архив для установки:** `deliverable/fedora-bcm4322-wifi-fix.tar.gz`
**Передача Mac → Fedora:** см. **[BLUETOOTH_FILE_TRANSFER.md](./BLUETOOTH_FILE_TRANSFER.md)** (порядок: приём на Fedora, затем Send с Mac).
---
## 1. Быстрый путь (WiFi fix)
```bash
cd ~/Downloads
tar xzf fedora-bcm4322-wifi-fix.tar.gz
cd fedora-bcm4322-wifi-fix
sudo bash install-bcm4322-firmware-fedora.sh
sudo reboot
nmcli device wifi list
nmcli device wifi connect "SSID" password "пароль"
```
---
## 2. RCA
| Симптом | Причина | Решение |
|---------|---------|---------|
| `Broadcom 4322 WLAN found`, WiFi нет | Драйвер b43 есть, **firmware нет** | `ucode16_mimo.fw` в `/lib/firmware/b43/` |
| `b43-fwcutter` установлен | Это утилита, не firmware | Установить `.fw` файлы |
| BT PAN: `bnep0` connect → disconnect | Профиль NM / телефон | §4.2 |
| `dnf` timeout | Нет интернета | Offline-архив или USB tether |
**Не переустанавливать Fedora** — BCM4322 снова потребует firmware.
---
## 3. Диагностика
```bash
uname -r
lspci -nn | grep -i network
lsmod | grep -E 'b43|bcma|ssb'
sudo dmesg | grep -i b43
nmcli device
ls -la /lib/firmware/b43/ucode16_mimo.fw
```
---
## 4. Интернет до установки firmware
### USB tethering (предпочтительно)
Redmi Note 14 → USB-модем → на Fedora `nmcli device``ping 8.8.8.8`.
### Bluetooth PAN
```bash
nmcli connection delete "Redmi Note 14 Network"
sudo systemctl restart bluetooth
bluetoothctl
# power on / agent on / default-agent / pair / trust / connect
```
На телефоне: Bluetooth-модем вкл., пересопрячь Fedora.
### Онлайн-путь (если интернет есть)
```bash
sudo dnf install rpmfusion-nonfree-release-tainted
sudo dnf install b43-firmware
sudo reboot
```
**Не ставить `akmod-wl`** на BCM4322.
---
## 5. После установки
```bash
sudo dmesg | grep -i b43 # нет "firmware ... not found"
nmcli device # wlan0 / wlp*
nmcli radio wifi on
nmcli device wifi list
```
Опционально (стабильность):
```bash
sudo iw dev <iface> set power_save off
```
---
## 6. Ядро
Рабочее: **6.17.1-300.fc43.x86_64**. В GRUB не выбирать 7.0.12, если загрузка нестабильна.
---
## 7. Цель
| Компонент | Состояние |
|-----------|-----------|
| Firmware | `/lib/firmware/b43/ucode16_mimo.fw` |
| Драйвер | `b43` без ошибок в dmesg |
| Интерфейс | `wlan0` / `wlp*` в nmcli |
| Сеть | WiFi connect работает |
---
*docs/old_mac — local_machine*

View File

@@ -0,0 +1,7 @@
BCM4322 b43 firmware offline bundle
Built: 2026-06-16
Source: broadcom-wl-6.30.163.46 via b43-fwcutter
Files: 155
Tarball: bcm4322-firmware-bundle.tar.gz
SHA256 tarball: 06d3f492c064c0db5549cf4e4bc5bd8fa40c15f3427ca02ec6a5d51f918b6032
SHA256 b43/ucode16_mimo.fw: 614c233b2f65653d298f74f64120068f84d031a40e3d37b68779ab7583fe574d

Some files were not shown because too many files have changed in this diff Show More