443 ポートを活用する
443 ポートで https / ssh / openvpn / wireguard を全部の待受ができたらいいなと思った。
フリーWiFiが443 / 53 /80 以外のポートを使わせてくれない事が非常に多い。公衆無線LANでポート監視やるのは流石にまずいと思うんだけど。実際やられてるんだから仕方ない。あまり監視をしちゃうと、某国みたいにVPNのイタチごっこが始まるので本当に勘弁してほしい。
よろしい、ならば抵抗してみよう。
sslh 最新版が UDP に対応
sslh の最新版(1.22)がUDPに対応していた
最新版コードを持ってきて ビルドする
git clone https://github.com/yrutschle/sslh.git cd sslh make
UDP にも対応させる
UDPはfork でパケットを流せないらしいので、select コールで使うらしい
./sslh-select -F /etc/sslh.conf
/etc/sslh.conf
verbose: 0;
foreground: true;
inetd: false;
numeric: false;
transparent: true;
timeout: 1;
user: "sslh";
pidfile: "/var/run/sslh/sslh-select.pid";
# Change hostname with your external address name.
listen:
(
{
host: "192.168.1.222";
is_udp: false;
port: "443";
},
{
host: "192.168.1.222";
is_udp: true;
port: "443";
}
);
protocols:
(
{ name: "ssh";
service: "ssh";
host: "127.0.0.1";
port: "8022";
is_udp: false;
fork: true;
},
{ name: "openvpn"; host: "localhost"; port: "1194"; },
{ name: "tls";
host: "127.0.0.1";
port: "443";
alpn_protocols: [ "h2", "http/1.1", "spdy/1", "spdy/2", "spdy/3" ];
is_udp: false;
fork: true;
log_level: 0;
tfo_ok: true },
# wireguard
{ name: "regex";
host: "192.168.1.21";
log_level: 2;
is_udp: true;
fork: false;
port: "11945";
regex_patterns: [ "\x01\x00\x00\x00" ];
}
);
wiregaurd は regexで
regex_patterns: [ "\x01\x00\x00\x00" ];
これで、wireguardのパケットを識別できるらしい。識別できるってことはブロックされちゃうってことでもあるけど、そこまで流行ってないwireguardだ、これでしばらく通信できそうな気はする。
UDP と TCP を同時リッスンするポイント
リッスンをudp/tcp と2つかくことが設定ポイントになる。
listen:
(
{
host: "192.168.1.222";
is_udp: false;
port: "443";
},
{
host: "192.168.1.222";
is_udp: true;
port: "443";
}
);
UDP サポートについて
UDPは本家のマニュアルに記載が追加されていた。
https://github.com/yrutschle/sslh/blob/master/doc/config.md#udp
UDPがサポートされたのは2021/08 の 1.22 リリース前後のようです。
443 ポートで隠す?
暗号化通信をしていたとしても、SNIでドメイン名は丸見えだし、IPアドレスは隠せない。
そうなると、必然的にVPNを使うことになる。TLSでトンネルを掘るとか、HTTPSで Proxy Connectをすることになる。
となると、TLS通信を監視する必要が出てくる。そのためにカスペルスキーのようなソフトでTLSの監視を行うことになる。
となると、すべての通信はLocalhost経由になり、監視されることになり、証明書を信用できなくなる。本当にそれは望んだ自由な社会なのだろうか。
IPv6でIP範囲指定が難しくなり、すべての端末がグローバルアドレスになりつつある現代でローカルネットやPC管理を前提としたセキュリティは崩壊寸前かもしれない。