Заметки фронтендера
20 subscribers
11 photos
11 files
55 links
Инструкции и советы по react, typescript, webpack
Download Telegram
Forwarded from Segment@tion fault
Элементарные вещи, которые делают неправильно, сужу по некоторым своим сотрудникам:

- oauth авторизация. Привязывают к email. Этого делать нельзя! Ладно в Google e-mail статический и навсегда. Но у FB, GitHub, Twitter и еще у 100500 провайдеров его можно менять. Поменял емейл - потерял доступ, отлично.

Привязывать oauth можно и нужно только к sub.

- традиционная авторизация. мыло-пароль, подтверждение мыла, "я забыл пароль" - опять подтверждение, смена мыла - опять подтверждение. Таблица аккаунта юзера обрастает какими-то страшными полями "код подтверждения емейла", "код подтверждения смены", "время, когда код был сгенерен", "время, когда код 2 был сгенерен".

Это - нехорошо, немасштабируемо и совершенно отвратительно читать. Как лучше?

- любая key-value db или kv-табличка в SQL
- key высылается юзеру
- value содержит метод и его параметры
- метод запускается, когда юзер нажал на URL с ключем, ввел ключ из смс или прописал ключ в TXT-запись своего домена
- PROFIT
#tor #linux #debian
Быстро поднять Tor мост на VPS c debian bullseye.


sudo ufw allow 9023
sudo apt install apt-transport-https
sudo -i
echo "deb [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org bullseye main" >> /etc/apt/sources.list
echo "deb-src [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org bullseye main" >> /etc/apt/sources.list
wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null
sudo apt update
sudo apt install tor deb.torproject.org-keyring
sudo apt install obfs4proxy
sudo setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy
sudo sed -i 's/NoNewPrivileges=yes/NoNewPrivileges=no/' /lib/systemd/system/tor@default.service
sudo systemctl daemon-reload
sudo tee -a /etc/tor/torrc > /dev/null <<EOT
Log notice file /var/log/tor/log
ORPort 9023
AssumeReachable 1
ExtORPort auto
BridgeRelay 1
PublishServerDescriptor 0
ExitPolicy reject *:*
ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy
ServerTransportListenAddr obfs4 0.0.0.0:443
ContactInfo nope@nope.com
Nickname lain
EOT
sudo systemctl restart tor


Obtain bridge's fingerprint:

sudo cat /var/lib/tor/fingerprint


Update the obfs4 config with your IP address, port and fingerprint:
sudo vi /var/lib/tor/pt_state/obfs4_bridgeline.txt

Restart tor:
sudo systemctl restart tor

Check that tor running sucessfully:
sudo tail /var/log/tor/log