更新日時: 2025-02-24 18:45
こいつを参考にまずレポジトリを登録します。今回なら
bash
#/etc/apt/sources.list.d/tor.list deb [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org jammy main deb-src [signed-by=/usr/share/keyrings/deb.torproject.org-keyring.gpg] https://deb.torproject.org/torproject.org jammy main
で、対応する
テキストファイル/ect/tor/torrc
を探す。ここで、公開ポート、公開鍵ディレクトリを指定する。
次に鍵の作成に移る。この鍵の生成はホスト名(xxx.onionのxxxの部分)の生成も含んでいる。あと、生成ファイルの所有者権限に気を付ける。とりあえずrootユーザー以外の読み書きを無効化したらいいでしょう。ミスるとあとでtorログで怒られるので怒られてからでもいいと思うけど。
生成はこれを参考に。
詳しいことはわかりませんが、CPUをフルに使って暗号鍵に対応したハッシュ値のホスト名を算出している。それゆえに、生成にはデスクトップなどの良いCPUを持ったやつでやるといい。できたフォルダは <HostName>/
になるので、ディレクトリを移動して/ect/tor/torrc
において、
HiddenServiceDir /var/lib/tor/<HostName>/
にする。
起動したら<HostName>.onion
で実際にアクセス。なんもなかったら行けるでしょう。
まず tor --verify-config
でtorrcの整合性を確認する。
bash
[warn] Directory /var/lib/tor/hidden_service/<HostName>/ cannot be read: Permission denied
と出た場合、鍵ディレクトリの所有者問題が発生しているので、まず、torを起動しているユーザーを確認する。
bash
ps -eo user:20,pid,cmd | grep tor debian-tor 2895222 /usr/bin/tor --defaults-torrc /usr/share/tor/tor-service-defaults-torrc -f /etc/tor/torrc --RunAsDaemon 0 #一応全ユーザーを確認 cat /etc/passwd #権限付与 sudo chown -R debian-tor:debian-tor /var/lib/tor/ sudo chmod -R 700 /var/lib/tor/
俺の場合はdebian-tor
君が管理してくれているそうなので、こいつの所有者権限をchmodで付与。あとは再起動して、指定のドメインにアクセスして確認。
今回は鍵を別のクライアントで作成したので権限設定がめんどくなってんのかも。デフォルトで生成される鍵なら初めから問題なかったのかもしれません。
torrcファイル一つで公開サーバーを管理できるのでまあ便利。あとはセキュリティー方面の情報を一切読んでいないので奥は深い。