diff options
| author | seraphim <18ycm9tx@anonaddy.me> | 2026-08-06 19:33:33 +0700 |
|---|---|---|
| committer | seraphim <18ycm9tx@anonaddy.me> | 2026-08-06 19:33:33 +0700 |
| commit | fbbd81232e3918113386f5343262a224c3bee401 (patch) | |
| tree | 5e1b5fea2bf23c7fb9a9f542295904d54a2ebb7d | |
| parent | c806cf66db7eb7eeee37ea267d25bda7800a0235 (diff) | |
niri keybinds upd
| -rwxr-xr-x | niri/.config/niri/config.kdl | 6 | ||||
| -rw-r--r-- | nixos/vpn-port-22-log.md | 125 |
2 files changed, 130 insertions, 1 deletions
diff --git a/niri/.config/niri/config.kdl b/niri/.config/niri/config.kdl index db681f6..750748c 100755 --- a/niri/.config/niri/config.kdl +++ b/niri/.config/niri/config.kdl @@ -227,6 +227,8 @@ binds { Mod+Ctrl+End { move-column-to-last; } // Monitor Focus & Movement + Mod+Shift+1 { focus-monitor-left; } + Mod+Shift+2 { focus-monitor-right; } Mod+Shift+Left { focus-monitor-left; } Mod+Shift+Down { focus-monitor-down; } Mod+Shift+Up { focus-monitor-up; } @@ -235,7 +237,9 @@ binds { Mod+Shift+J { focus-monitor-down; } Mod+Shift+K { focus-monitor-up; } Mod+Shift+L { focus-monitor-right; } - + + Mod+Shift+Ctrl+1 { move-column-to-monitor-left; } + Mod+Shift+Ctrl+2 { move-column-to-monitor-right; } Mod+Shift+Ctrl+Left { move-column-to-monitor-left; } Mod+Shift+Ctrl+Down { move-column-to-monitor-down; } Mod+Shift+Ctrl+Up { move-column-to-monitor-up; } diff --git a/nixos/vpn-port-22-log.md b/nixos/vpn-port-22-log.md new file mode 100644 index 0000000..1466296 --- /dev/null +++ b/nixos/vpn-port-22-log.md @@ -0,0 +1,125 @@ +# Лог диагностики: исходящий порт 22 заблокирован + +> Отчёт о том, почему `git push` не работает ни с VPN, ни без него. +> Чувствительные данные (ключи, preshared-key) удалены. + +## Вывод + +- **Без VPN:** российский провайдер режет исходящий порт 22 → `Network is unreachable`. +- **С VPN (WireGuard):** сам провайдер VPN-сервиса **в целом запрещает исходящий порт 22** + (порт 22 к `github.com`, `gitlab.com` и `git.sr.ht` — timeout, при этом порт 443 открыт ко всем). + +Итог: git по SSH (использует порт 22) не может соединиться ни в одном состоянии. + +--- + +## 1. Конфигурация интерфейса WireGuard (без секретов) + +Из `/etc/wireguard/wg.conf`: + +```ini +[Interface] +PrivateKey = [Скрыто] +Address = 10.233.10.237/32 +DNS = 1.1.1.1, 8.8.4.4 +MTU = 1380 + +[Peer] +PublicKey = +ickp+Ceu/QcMW7pTA1is4ZcUSzglHuyuBRq0QeQ5D0= +PresharedKey = [Скрыто] +AllowedIPs = 0.0.0.0/0, ::/0 +PersistentKeepalive = 25 +Endpoint = nl01w-dp.kcufwfgnkr.net:62233 +``` + +`AllowedIPs = 0.0.0.0/0` → туннель должен заворачивать весь трафик (все маршруты в таблице 52219). + +--- + +## 2. Состояние туннеля + +Интерфейс `wg` поднят, адрес и DNS настроены, маршрут по умолчанию через туннель существует: + +```text +$ ip -brief addr +enp42s0 UP 192.168.1.40/24 fd55:69a6:a86:0:.../64 ... +throne-tun DOWN ... +wg UP 10.233.10.237/32 + +# специфичная для wg-QUICK таблица маршрутов: +$ ip route show table 52219 +default dev wg proto static scope link metric 50 + +# DNS на туннеле: +$ resolvectl status wg +Link 18 (wg) Current DNS Server: 1.1.1.1 DNS Servers: 1.1.1.1 8.8.4.4 Default Route: yes +``` + +IP-адрес в туннеле: `10.233.10.237/32`. + +--- + +## 3. Туннель работает (проверка `ping` через VPN) + +```text +$ ping -c 2 1.1.1.1 +2 пакета передано, 2 получено, 0% потерь +rtt min/avg/max/mdev = 114/115/118 ms ← задержка самого VPN +``` + +--- + +## 4. Порт 443 открыт (HTTPS работает) + +```text +$ ssh -vv -p 443 git@git.sr.ht (только проверка соединения) +Connecting to git.sr.ht [46.23.81.155] port 443 +banner: HTTP/1.1 400 Bad Request / Server: nginx +→ порт 443 доступен (это обычный HTTPS/nginx, никакого SSH-сервиса на 443 у git.sr.ht нет) +``` + +--- + +## 5. Порт 22 заблокирова + +### 5.1 Без VPN — `Network is unreachable` + +```text +$ ssh -p 22 git@git.sr.ht +ssh: connect to host git.sr.ht port 22: Network is unreachable +``` + +### 5.2 С VPN — таймаут на исходящем 22 + +```text +$ /dev/tcp/46.23.81.155/22 → FAIL (connection timed out) +$ ssh -4 -p 22 git@46.23.81.155 → Connection timed out +$ /dev/tcp/140.82.121.4/22 (github.com:22) → FAILED +$ /dev/tcp/172.65.251.78/22 (gitlab.com:22) → FAILED +``` + +Порт 22 таймаутится ко **всем** хостам через туннель, а порт 443 — открыт: + +```text +$ /dev/tcp/172.65.251.78/443 (gitlab.com:443) → OPEN +``` + +### 5.3 DNS (спойлер: отвечал IPv6 без маршрута) + +```text +$ getent hosts git.sr.ht +2a03:6000:1813:1337::155 (IPv6 — без глобального маршрута) +46.23.81.155 (IPv4 — нужный адрес) +``` + +--- + +## 6. Итоговая таблица + +| Состояние | git.sr.ht:22 | git.sr.ht:443 | Вердикт | +|-----------|--------------|---------------|---------| +| Без VPN | недоступен (ISP) | — | порт 22 режется провайдером | +| С VPN | таймаут (VPN) | открыт | VPN-сервис запрещает исходящий 22 | + +**Причина:** VPN-сервис на стороне выхода `nl01w-dp.kcufwfgnkr.net` +запрещает исходящие соединения по порту 22. Поэтому git-по-SSH не работает. |
