GithubHelp home page GithubHelp logo

hardcore-sushi / torvirt Goto Github PK

View Code? Open in Web Editor NEW
27.0 2.0 4.0 1.25 MB

Whonix-like setup with a libvirt workstation and a podman container as the Tor gateway.

License: GNU Affero General Public License v3.0

Dockerfile 3.85% Shell 96.15%
anonymous isolation libvirt podman tor virtualization whonix

torvirt's Introduction

Hi!

I'm MatΓ©o Duparc, a French πŸ‡«πŸ‡· freelancer with a great passion for open-source software. I'm mainly interested in topics related to privacy and cybersecurity. I code in rust most of the time.

I currently offer two services, for both individuals and companies:

  • πŸ§‘β€πŸ’» Software development
  • πŸ” Online privacy & security consulting

If you're interested, check out my website! It is free of any Javascript πŸ€—.

Crypto-currencies are accepted.

torvirt's People

Contributors

hardcore-sushi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

torvirt's Issues

setup fails: tor (no such package)

STEP 1/7: FROM alpine:latest
STEP 2/7: RUN apk add tor
fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/APKINDEX.tar.gz
ERROR: https://dl-cdn.alpinelinux.org/alpine/v3.17/main: temporary error (try again later)
WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.17/main: No such file or directory
fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/community/x86_64/APKINDEX.tar.gz
ERROR: https://dl-cdn.alpinelinux.org/alpine/v3.17/community: temporary error (try again later)
WARNING: Ignoring https://dl-cdn.alpinelinux.org/alpine/v3.17/community: No such file or directory
ERROR: unable to select packages:
  tor (no such package):
    required by: world[tor]
Error: building at STEP "RUN apk add tor": while running runtime: exit status 1

I am using Fedora Kinoite, Distrobox and virt-manager are already installed and used. Your solution sounds great, but the container creation process fails for some reason.

obfs4 documentation

I love this project! It's portable and I was able to get it running in minutes! The only issue I had was setting up an obfs4 bridge due to censorship here. I have some changes that installs lyrebird from the alpine testing repo and configures torrc. I think there should also be some documentation for rebuilding the container.

In gateway/Containerfile

FROM alpine:latest
-RUN apk add tor
+RUN apk add tor lyrebird --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/

In gateway/torrc

DNSPort 10.2.2.254:5353
+
+UseBridges 1
+ClientTransportPlugin obfs4 exec /usr/bin/lyrebird managed
+bridge obfs4 <bridge stuff from https://bridges.torproject.org/bridges/?transport=obfs4>

Great project! Mind connecting it with containerized Virtualization?

Luca, the creator of Distrobox, has created a great guide on how to use libvirt, qemu etc. in a Distrobox Container and then connect that to your client in another container using ssh

As far as I understood this has many benefits. If the containers are adapted to have the right filesystem permissions and all, they should be pretty tight. I imagine only /var/lib/libvirt and ssh, thats it. The client, for example virt-manager could be on your host OS or even also in a container. I tried this and it works great!

And the tor bridge would sit in another container, tight apart from the tor traffic, but no filesystem permissions at all.

The current guide is not hardened in that way, its simply "make this run on an immutable System without layering anything". And its great! But I think this also has greeeat potential for a really secure Qubes-like OS, but not using virtualization like crazy, but well isolated containers.

What do you think?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.