Internet Tethering via USB

Please can someone guide me how to connect internet on my QubesOS via USB tethering?

I came across a solution earlier but didn’t work other than getting my whole QubesOS screwed. The solution suggested that in the QubesOS syst-net, the Ethernet USB should be added to the right tab of selected devices in the setting options which mandates SHUTTINGDOWN the sys-net should be but at shutting down the sys-net to configure the settings as directed, my whole QubesOS went off and I couldn’t boot into it no more unless I have to reinstall which has been very frustrating.

I also did noticed that while I was deploying up a fresh installation of the QubesOS on my external hard disk drive, the USB configuration was grayed out indicating the configuration for USB has been disabled because I am installing from USB. So, I have been wondering how else am I supposed to get the QubesOS installed or if enabling using|connecting the USB for sys-net with sys-firewall is an appropriate configuration. I have concluded enabling and disabling USB for sys-net with sys-firewall option in two installation process but none is solving my problem.

I am new to QubesOS and I am willing to learn and better understand it. My introspection is probably the USB device driver was unable to install during the installation process.

I appreciate if you can guide me on the step 3 because I don’t want not ruin another installation that I have to do no more. I will be installing on one the free disk partition on my external hard disk drive via bootable USB.

Thanks.

  1. Connect phone to laptop
  2. In Android > Hotspot and Tethering > Enable USB tethering
  3. In Qubes Devices Manager, connect the phone to sys-net
  4. You should have internet now.
    Not sure about iPHones.
1 Like

Thank you for responding Oijawyuh. I have completed the step 1 and 2, It’s not clear to me that I still have to complete the step 3 but I don’t know how to get the step three done.

I came across a solution earlier but didn’t work other than getting my whole QubesOS screwed. The solution suggested that in the QubesOS syst-net, the Ethernet USB should be added to the right tab of selected devices in the setting options which mandates SHUTTINGDOWN the sys-net should be but at shutting down the sys-net to configure the settings as directed, my whole QubesOS went off and I couldn’t boot into it no more unless I have to reinstall which has been very frustrating.

I also did noticed that while I was deploying up a fresh installation of the QubesOS on my external hard disk drive, the USB configuration was grayed out indicating the configuration for USB has been disabled because I am installing from USB. So, I have been wondering how else am I supposed to get the QubesOS installed or if enabling using|connecting the USB for sys-net with sys-firewall is an appropriate configuration. I have concluded enabling and disabling USB for sys-net with sys-firewall option in two installation process but none is solving my problem.

I am new to QubesOS and I am willing to learn and better understand it. My introspection is probably the USB device driver was unable to install during the installation process.

I appreciate if you can guide me on the step 3 because I don’t want not ruin another installation that I have to do no more. I will be installing on one the free disk partition on my external hard disk drive via bootable USB.

Thanks.

As I see it this is at it’s best misleading, and at worst totally dangerous and wrong.

Please try this, considering also security reasoning during deploying USB tethering.

That’s what happens when you pass through the USB controller containing your boot drive into a VM. It implodes…

No. It was greyed out because it detected a USB keyboard.

Is installing it to an internal drive not an option for you? Or at the very least, on a drive that doesn’t use the same USB controller as your tethered USB internet device? That would fix all your problems…


Qubes OS is not TAILS…

Here is what I am trying to achieve:

  • I intentionally purchased and external HHD of 5TB for prospect of having a QubesOS installed in 1.5TB space of the external HDD where I can plug in to any available PC to me, then boot from it.
  • On the installed QubesOS, I am looking to have other operating system such as ParrotOS, Windows deployed via the hyperVirtualization option on the QubesOS (I have seen video tutorial on how to get it done).
  • I intentionally don’t want to enable or use my WIFI option to connect to internet. I only want to use USB Tethered internet connection from one of my android devices.

But as it is, it does it seem achieving what I intend doing with QubesOS is impossible? I don’t want to be shadow boxing out of complete ignorance of what is out of my depths. But, if possible, I appreciate proper guidance. I am having big time with working around general internet networking on QubesOS. I’m still searching for video tutorial but none have been found by me at this time.

I have been using Kali and Parrot which I have an intermediate understanding about at this moment. I cam just looking to change my option since QubesOS have complete hypervirtualization solution with option to dispose or retain these qubes. Thanks

Nice!

Although Qubes OS will present some “unique challenges” if you’re going to be migrating installs between different hardware configurations.

Just be ready to have it behave unexpectedly, be ready to have to tweak it if certain hardware doesn’t work as expected, and be prepared for some things to straight-up not work at all, depending on the hardware configuration you try to boot an existing Qubes OS installation on.

Qubes OS wasn’t really designed to do what you want to do with it.

The ethos of Qubes OS is to install it onto a machine, get to know every aspect of that machine, and then compartmentalise the living daylights out of it so that you know it’s “safe”. Then, you can make it do epic things that quite frankly no other workstation OS can.

That doesn’t mean that what you want to do is impossible. It definitely can be done, but it just means that you’re likely to encounter a few unexpected challenges.

HVMs are incredible straightforward to set up. You shouldn’t have any trouble. And if you do, we’re here to help!

Ah, right. You need your wifi antenna free for other tasks. I understand :wink:

A USB wifi antenna might be a bit better suited to that. It would also provide you with a bit of certainty that it will work, especially if your hardware keeps constantly changing.

But hey, it’s entirely up to you :slight_smile:

——-

Basically, Qubes OS passes through PCI devices into VMs.

If you type in lspci into a dom0 terminal in Qubes OS (or on a regular Linux distro), it’ll show the devices that can be passed into VMs.

PCI devices can only be passed into one VM at a time, ie PCI devices cannot be “shared” by multiple VMs simultaneously. That’s just the way the passthrough driver works (pciback).

Qubes doesn’t allow you to “partially” pass through a PCI device. For example, a single USB port can’t be passed through; you have to give the VM the entire USB controller. This is why you’re encountering problems passing through USB devices when the boot drive is also a USB device.

If you pass through the USB controller containing your HDD, it’s essentially the same as unplugging an internal HDD from the motherboard while the machine is still on. Instant implosion….

If your HDD will be plugged into it’s own separate USB controller, and your tethering device on another USB controller, then it’s easier to accomplish what you’re trying to do.

The thing is:

  • you’ll be restricted to hardware with multiple USB controllers (multiple USB controllers is a luxury in hardware nowadays :frowning:)
  • you’ll likely have to reconfigure your PCI passthrough config every time you move your HDD to another machine
  • or you will have to find another way to connect your external HDD when booting, so that you can keep the USB controller free

Well, strictly speaking, it’s not “impossible”, but you will likely encounter a few unexpected challenges that you’ll need to solve if you are dealing with constantly changing hardware configurations.

Thank you for following with me, I really appreciate. I just concluded setting up a fresh QubesOS installation. This are my setups:

  • I have two USB port available within my laptop (One on the left side and the second on the right side). In my quest to achieve this prospect, I knew I might be needing more USB port so I got another external USB hub as you have assumed lol.
  • I connected the external USB hub to the right side of my laptop where I connected both the External HDD and Bootable USB Flash drive into to complete the fresh installation.
  • At the final setup stage of the QubesOS, I left all configurations default and now I am able to boot into the QubesOS on the external HDD without the bootable USB.
    At this time the installtion has been concluded and the wifi is available but I want to internet connection to come from the USB (I think QubesOS developer need to consider intermediate user and make UI experience easier to an average user. My introspection is that QubesOS did not install my Ethernet adapter which controls the USB internet tethering.

Please, please and please. Can you give me a practical guide on how to achieve setup a new qubes for USB internet access. Let me know if you need my qubes interface for you to understand. Thanks

Can you provide me a direct means of reaching you? Probably via Email, Telegram, Discord or SIgnalAPP. Thanks

Two USB ports doesn’t necessarily mean two separate USB controllers. That’s the important part for you to be able to achieve your goal.

That will still all funnel into the same USB controller, which won’t make any difference unless you create yourself a USB Qube.

The easy version:

The academic version:

Currently, the default Qubes OS first boot does not create USB passthrough, for various reasons.

What I want you to do is to get out of your mind the any assumptions that Qubes OS is like any other “Linux distro”. It’s not.

Qubes OS is like multiple OSes stacked on top of a cloud server (Xen)….and that cloud server is inside your laptop.

There’s a separate VM for each of your PCI devices (so they can’t interact with each other, effective against fingerprinting and good for malware containment).

There’s also a separate VM with nothing in it (that’s by design), and it’s only job is to and facilitate the other VMs. This is called dom0 (domain 0).

Doing anything in dom0 is the equivalent of doing something as root, but for every single VM as well (dom0 can see everything).

Do as little as possible inside dom0!

Work is being done, the devs are doing a fantastic job, and the community is also contributing considerably.

Read the docs. It’ll be the best thing you can do for your understanding of Qubes OS. Plus, it’ll only take you a few minutes. They’re short and concise.

The output of the following commands in dom0 would be nice to have:

# List all PCI devices connected
# and the kernel modules and 
# drivers in use for them
lspci -k

# List all USB devices, as well as 
# what USB controllers they are
# connected to (this will tell you 
# if your USB ports are on the 
# same USB controller or not)
lsusb -v 2>/dev/null | grep '^Bus\|iSerial'

You’re reaching me directly now :wink: