At least in arch, the package qbittorrent-nox now contains the ability to connect to i2p. For people starting out, using i2p you wouldn’t need to use a VPN to download your favorite “linux ISOs”; just use i2p and have a fully automated Jellyfin server!

I recommend using i2pd as the i2p router

  • GravitySpoiled@lemmy.ml
    link
    fedilink
    English
    arrow-up
    5
    ·
    edit-2
    9 months ago

    Does it work for the average joe?

    If not, what’s missing such that we all can move to it?

    • aldalire@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      9 months ago

      It’s all free and open source! If you’re on windows it might be a little more difficult so at least having a linux PC you can reliably have on 24/7 would make things easier. I personally use arch (I’ve tried this on my endeavour OS), very easy installation for beginners) for this since it’s rolling release (latest versions of packages!) and the AUR is a godsend. The programs themselves take little ram and cpu, with qbittorrent probably needing the most ram once you have more torrents downloaded (I’m running this on 4 cores of CPU and 4 gigs of ram alongside my minecraft server, a tor relay and a monero node. any old laptop repurposed with endeavour should do the trick)

      the steps I took to do this (on endeavour os) was:

      install i2pd

      • sudo pacman -S i2pd

      Install qbittorrent webui

      • sudo pacman -S qbittorrent-nox

      install prowlarr (optionally sonarr and radarr, which will automatically manage video files for you. Plays reaaaally well with Jellyfin, so you wouldn’t have weirdly formatted files that is being read by Jellyfin)

      • yay -S prowlarr
      • yay -S sonarr
      • yay -S radarr

      Lastly you have to turn enable the *arrs in systemd

      • sudo systemctl enable --now prowlarr
      • (do the same with sonarr and radarr if you have them)

      (or you can also go the docker route with qbittorrent, prowlarr, sonarr and radarr, if you don’t have arch. This is the more universal route and can handle many more devices. Although I have not checked if qbittorrent-docker has i2p integration yet. For that you may need to swap out qbittorrent for vuze, or apply the patch in the comment in the link i posted in the docker container [which is editing the qBittorrent.conf file])

      For the average joe i’d say it’ll be an afternoon’s worth of labor to set up, and the upside is not relying on a VPN to install content and a fully automated Jellyfin server! Plus you get to help the steadily-growing i2p network If you have more questions I’d be happy to answer here :)

      • GravitySpoiled@lemmy.ml
        link
        fedilink
        English
        arrow-up
        4
        ·
        9 months ago

        Thanks for the write up. We need such a write up as a top level post if you’re down for it.

        I use docker and prefer docker over a package.

        I’d love to jump on the bandwagon but until now I thought it’s still years away.

        Do you know if this is the right docker image? https://geti2p.net/de/download/docker

        Are there other trackers than postman? For e.g. German/French content?

        How to connect qbittorrent and i2p in docker?

        Are there already private trackers as well? I prefer private ones.

        • aldalire@lemmy.dbzer0.comOP
          link
          fedilink
          English
          arrow-up
          3
          ·
          edit-2
          9 months ago

          I haven’t tried the i2p docker image, but it shouldd work. Let me know

          There are some German and French content that I see occasionally in Postman. In the actual i2p postman site you can filter for the French and German language.

          If you’re using the docker image the network_mode is set to host, so it should work the same as if i2p was installed without containerization.

          where 7656 is the SAM bridge port. I’m using version 4.6.3 of qbittorrent and it has this feature. The arch package for qbittorrent-nox (the webui edition of qbittorrent) already has this feature. I just checked; the latest docker image for qbittorrent should already have this feature! https://github.com/linuxserver/docker-qbittorrent

          Not too sure about private trackers. Although, due to the fundamental anonymizing feature of i2p there would be no way for copyright trolls to track IP addresses and send mass lawsuits, which private trackers defend against.

          • GravitySpoiled@lemmy.ml
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            9 months ago

            Private trackers are not only protecting you. It also protects against full time leachers. And people keep up the quality of the seeds. Bad torrents die quickly.

    • RyeMan@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      9 months ago

      Absolutely. Go to https://geti2p.net/ to get started. There are some super simple Windows installers that make everything just a few clicks. If you’re on Linux it’s built into the package managers for Ubuntu/Debian but from my experience it’s a lot better if you can get the Java source version working because then it can self update and you’ll always have the most current release.

      Once it’s installed and running let your new i2p router run for a minimum of about 30-45 min to explore the network and build good connections with peers. The longer it runs the more stable it becomes but it should be usable after about 30 minutes on your first start up (subsequent start ups are a little faster after your router gets to know the network a little better). And that’s it! You’re now running an i2p router!

      The only part where things get a little hard is with the proxy settings… Unfortunately there just aren’t enough active devs or funding in i2p to support a dedicated browser like Tor so this is the only side of i2p that tends to get more involved. You need to configure a browser to proxy http requests through the port used for i2p http: 4444. If the i2p router is on the same machine as the browser then it’s just a matter of entering your local address (127.0.0.1) and port (4444) into your proxy settings. If your i2p router is remote, you need to use ssh port forwarding on port 4444. Alternatively, there is a Firefox plugin that one of the core i2p devs (idk) maintains which automatically containerizes and proxies all .i2p addresses while leaving normal web traffic alone, it’s called “I2P In Private Browsing”. Only warning that the dev for that project cites is that the plugin, although open sourced, has not gone through any security auditing so there’s no guarantee that no information gets leaked to the clear web - so basically just avoid this if maximum privacy is your goal.

      After your router is started up and proxy settings are configured, you’re good to go! Check out some starter sites like i2pforum.i2p to join in on i2p related discussions and development. notbob.i2p also offers a nice sortable directory of some sites hosted on i2p. Or… Host your own hidden service(s)! The standard i2p install comes with a prepackaged and preconfigured Jetty web server, just start the service from your local tunnels page and you’re now hosting a hidden website!

      The possibilities are pretty much endless from here, anything that communicates on TCP/UDP can be tunneled through I2P. Which by the way is a huge advantage over Tor since Tor does not even support UDP. Unlike Tor, I2P also has a much better incentive for node operators since every user is a node, the more people who use I2P, the faster and better it becomes… A Tor node only gets spun up when someone chooses to donate their resources to the network out of the grace of their heart. This also applies to P2P downloading. In fact… It helps to grab a popular download from an I2P indexer when starting a fresh router as that helps introduce your client to new peers. Torrenting is not even an option on Tor as it is basically DDOS’S the network of limited nodes…

  • RyeMan@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    9 months ago

    qBittorrent I have not tried personally but I would think that if you have i2p set up on qbit already then enabling the setting “automatically add these trackers to new downloads” and add in a few open i2p trackers. Postman requires an account so unless the exact same torrent has already been posted there you won’t be able to bridge.

    For Prowlarr, it’s a little more complicated. You can add Postman just like any other indexer but you then need to configure your proxy settings in Prowlarr for it to be reachable. If you are running your i2p router on the same machine you can just enter your local address (127.0.0.1) with port 4444 and it’ll connect. If your router is on a remote machine the easiest solution is to then use ssh port forwarding (autossh is handy here). Ssh forward the remote 4444 port to local and then use the same address and port. The final step is setting your ignored addresses, I have a bit of a list but the idea is to filter out all non .i2p addresses so an example would look like: *.com, *.net, *.info, …

    EDIT: I should also add, if you are sticking with I2PD and are more concerned with just downloading and not incorporating the *arr suite there is a standalone Snark download that’s floating around somewhere that can plug into I2PD. I haven’t used the standalone personally but I do know that Snark is by far the most optimized client exclusively for i2p torrents. Snark is also baked into the standard i2p install by default.

    • aldalire@lemmy.dbzer0.comOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      9 months ago

      Oh yes adding i2p trackers would make things work better, lemme try that out.

      For i2pd, by default the http proxy binds to localhost but you can set the ip to 0.0.0.0 in the settings to bind it to all interfaces. Then you can just do <internal ip>:4444

      Yes i have tried i2psnark standalone. It works well, but i have noticed it connects to i2cp, while qbittorrent binds to the SAM port. It’s a bit technical but i wonder what’s the difference between the two protocols?