Linux Namespaceを使ったTor分離ツールのoniux

TorプロジェクトからLinux Namespaceで任意のアプリケーションをTorネットワークに分離するoniuxというツールがリリースされました．
動作としては以前からあるtorsocksやtorifyのようなもののようです．
少し試してみました．

Introducing oniux: Kernel-level Tor isolation for any Linux app | The Tor Project

The Tor Project / Core / oniux · GitLab

oniuxはRust製です．以下のようにしてリポジトリから導入できます．

$ cargo install --git https://gitlab.torproject.org/tpo/core/oniux oniux@0.4.0

optionはなさそうです．

$ oniux --help
Usage: oniux <CMD>...

Arguments:
<CMD>... The actual program to execute

Options:
-h, --help Print help

早速試してみます．Torネットワークを使っているかのチェックサイトにアクセスします．
テキストブラウザのw3mで直にアクセスすると Sorry. You are not using Tor.
oniux経由だと Congratulations. This browser is configured to use Tor. となります．良さそうです．

$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'
Sorry. You are not using Tor.
$ oniux w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'
Congratulations. This browser is configured to use Tor.

その他にもshellを起動してTorネットワーク用shellなんてことも．

$ oniux bash
$ w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'
Congratulations. This browser is configured to use Tor.

Firefoxでも試してみます．

$ oniux firefox -P temp --profile `mktemp -d`

Torネットワークを使えていそうです．

BBCなんかも利用できます．

が，日本のNHKなんかは拒否されます．これはTorBrowserなどでも同じで日本のメディア系サイトは大抵拒否されちゃうんですよね……．

対してBBCなどはonionアドレスでも提供されています．

https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/

でもoniux経由のFirefoxだと名前が引けないようでアクセスできません．他のonion siteもダメそうです．

$ oniux w3m https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/
w3m: Can't load https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/.
$ oniux w3m https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/
w3m: Can't load https://www.facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/.
$ oniux curl -v https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/
* Not resolving .onion address (RFC 7686)
* Could not resolve host: www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion
* closing connection #0
curl: (6) Not resolving .onion address (RFC 7686)
$ oniux wget https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/
--2025-05-20 18:57:14-- https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/
Resolving www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion (www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion)... failed: Name or service not known.
wget: unable to resolve host address ‘www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion’
$ oniux ssh pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion -F /dev/null
ssh: Could not resolve hostname pi3bddj6lflqdtsfhdlja2zma3m7kqc4rhwpytoa37pbjc63suocj6qd.onion: Name or service not known

今のところonion addressは使えなさそうな感じです．

Formalize toggle override for non-Tor applications that follow RFC 7686 (#202) · Issue · tpo/core/torspec

Formalize toggle override for non-Tor applications that follow RFC 7686 (#202) · Issue · tpo/core/torspec

oniuxはまだ実験的なツールなのでいつもは従来のtorsocksなどを利用しつつ見守っていこうと思います．

$ torsocks w3m -dump https://check.torproject.org/ | grep -e 'Sorry.' -e 'Congratulations.'
Congratulations. This browser is configured to use Tor.
$ torsocks w3m -dump https://www.bbcnewsd73hkzno2ini43t4gblxvycyac5aw4gnv7t2rccijh7745uqd.onion/ | head
BBC Homepage

• Skip to content
• Accessibility Help

•
Your account

• Home
• News

環境

$ grep ^version ~/.cargo/git/checkouts/oniux-a37b67fa6132af61/ff31287/Cargo.toml
version = "0.4.0"
$ dpkg-query -W cargo torsocks tor w3m firefox openssh-client
cargo
firefox 138.0.4-1
openssh-client 1:10.0p1-5
tor 0.4.8.16-1
torsocks 2.5.0-1
w3m 0.5.3+git20230121-2.1
$ lsb_release -dr
Description: Debian GNU/Linux 13 (trixie)
Release: 13
$ arch
x86_64