Need help to determine if my Huawei USB modem can work with Linux distros generally and Qubes particulary

It should be not the same fingerprint, right? Still, Firefox browser and Telegram application are two different access levels, no?

1 Like

I am definitely not the right person to answer the questions above, but …

There are probably packages in fedora and Debian which will handle the AT/SMS for you.

if I wanted to put a bug or tracer on someone, the firmware of a network device seems ideal. It can see everything going through it, and anything you let it see on your machine, and for LTE you need some exotic RF equipment to even hope to see what it is sending itself.

1 Like

Need some advice. Tried to test AT commands usage but it seems sys-net terminal doesn’t recognize them. Says it’s unknown bash command. Maybe it needs some special command to enter AT commands mode or installation of some special package. Read many articles but they seem are all for old modems or have not enough info for correct understanding. Can you check this one and say if this manual suitable for Qubes? Didn’t try it because there is SSH so I’m not sure if it’s relevant for Qubes. Maybe here is a person who knows the correct way to enable AT commands in Qubes? What additional packages needed, etc.
Also tried to use cloned sys-net for this test, as was suggested before. Unchecked β€œprovides network” and β€œstart during boot”. When I started qube itself it couldn’t even start. There was only a constantly spinning circle in Qubes Domains. Somehow each time when I interacted with this qube (generaly just by watching its qube settings) it always turned mic and dynamic volume on, though it was always turned off by me and I never touched any sound settings after this. Anyway this qube couldn’t start and even didn’t react on β€œkill” button so I had to delete it. My guess is that I probably had to stop sys-whonix, sys-firewall and sys-net first, before starting this one, though I still don’t fully understand the logic why.

1 Like

AT commands works in serial connection only. Some modems provide web based serial terminal, to some you must start serial connection in shell.

Most widelly used serial terminal is minicom.
Search web how to connect to serial port of your modem.

PS: it was 12 years ago when I’ve dealt with modem and AT comnands and done that on router in dd-wrt (and it was β€˜fire&forget’) but in linux you could use command screen to establish serial connection to usb device

1 Like

I installed Screen on my Debian template then followed this manual that I found in the web. Wouldn’t say that I fully understood this all. First I just used sudo dmesg | grep tty command to find that tty number of my modem. Not sure what meant β€œFind the tty number while you are already connected” but instead of example output it gave out completely different output:

 sudo dmesg | grep tty
[    8.587464] systemd[1]: Created slice system-getty.slice - Slice /system/getty.
[    8.590563] systemd[1]: Created slice system-serial\x2dgetty.slice - Slice /system/serial-getty.

So I’m stuck on this step 'cause I don’t know tty number of usb and suspect more and more that I chose wrong manual. :smile: Anyway, what was it trying to tell me in this last output?

1 Like

Nothing.
You found unrelated dmesg entry.

Try with journalctl |grep tty instead

2 Likes

Another way is to run
journalctl -f
and then plug your modem.

The log messages will appear as they are created, and you can press Ctrl-C to stop any new ones from hiding the useful ones.

1 Like

Tried your method. It gave a lot of text with word β€œgetty”.

1 Like

Tried your method too. Got a lot of text. Copied it to the text file. Searching found only one word β€œtty”: user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/journalctl -f

Posting full version:

sudo journalctl -f
июн 22 03:33:30 sys-net systemd[1]: Stopping user-runtime-dir@0.service - User Runtime Directory /run/user/0...
июн 22 03:33:30 sys-net systemd[1]: run-user-0.mount: Deactivated successfully.
июн 22 03:33:30 sys-net systemd[1]: user-runtime-dir@0.service: Deactivated successfully.
июн 22 03:33:30 sys-net systemd[1]: Stopped user-runtime-dir@0.service - User Runtime Directory /run/user/0.
июн 22 03:33:30 sys-net systemd[1]: Removed slice user-0.slice - User Slice of UID 0.
июн 22 03:33:30 sys-net systemd[1]: user-0.slice: Consumed 1.765s CPU time.
июн 22 03:33:34 sys-net systemctl[1970]: Failed to connect to bus: ΠΠΎΡΠΈΡ‚Π΅Π»ΡŒ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½
июн 22 03:33:34 sys-net qubes.StartApp+xfce4-terminal-dom0[1981]: НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρƒ сСссий: НС ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΊ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρƒ сСансов: SESSION_MANAGER environment variable not defined
июн 22 03:34:10 sys-net sudo[2030]:     user : TTY=pts/0 ; PWD=/home/user ; USER=root ; COMMAND=/usr/bin/journalctl -f
июн 22 03:34:10 sys-net sudo[2030]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=1000)
июн 22 03:34:19 sys-net qrexec-agent[2033]: 2025-06-22 03:34:19.431 qrexec-agent[2033]: qrexec-agent-data.c:256:handle_new_process_common: executed: root:QUBESRPC qubes.USBAttach dom0 (pid 2035)
июн 22 03:34:19 sys-net qrexec-agent[2035]: pam_unix(qrexec:session): session opened for user root(uid=0) by (uid=0)
июн 22 03:34:19 sys-net systemd[1]: Created slice user-0.slice - User Slice of UID 0.
июн 22 03:34:19 sys-net systemd[1]: Starting user-runtime-dir@0.service - User Runtime Directory /run/user/0...
июн 22 03:34:19 sys-net systemd[1]: Finished user-runtime-dir@0.service - User Runtime Directory /run/user/0.
июн 22 03:34:19 sys-net systemd[1]: Starting user@0.service - User Manager for UID 0...
июн 22 03:34:19 sys-net (systemd)[2037]: pam_unix(systemd-user:session): session opened for user root(uid=0) by (uid=0)
июн 22 03:34:19 sys-net systemd[2037]: Queued start job for default target default.target.
июн 22 03:34:19 sys-net systemd[2037]: Created slice app.slice - User Application Slice.
июн 22 03:34:19 sys-net systemd[2037]: Created slice session.slice - User Core Session Slice.
июн 22 03:34:19 sys-net systemd[2037]: Reached target paths.target - Paths.
июн 22 03:34:19 sys-net systemd[2037]: Reached target timers.target - Timers.
июн 22 03:34:19 sys-net systemd[2037]: Starting dbus.socket - D-Bus User Message Bus Socket...
июн 22 03:34:19 sys-net systemd[2037]: Listening on dirmngr.socket - GnuPG network certificate management daemon.
июн 22 03:34:19 sys-net systemd[2037]: Listening on gcr-ssh-agent.socket - GCR ssh-agent wrapper.
июн 22 03:34:19 sys-net systemd[2037]: Listening on gnome-keyring-daemon.socket - GNOME Keyring daemon.
июн 22 03:34:19 sys-net systemd[2037]: Listening on gpg-agent-browser.socket - GnuPG cryptographic agent and passphrase cache (access for web browsers).
июн 22 03:34:19 sys-net systemd[2037]: Listening on gpg-agent-extra.socket - GnuPG cryptographic agent and passphrase cache (restricted).
июн 22 03:34:19 sys-net systemd[2037]: Listening on gpg-agent-ssh.socket - GnuPG cryptographic agent (ssh-agent emulation).
июн 22 03:34:19 sys-net systemd[2037]: Listening on gpg-agent.socket - GnuPG cryptographic agent and passphrase cache.
июн 22 03:34:19 sys-net systemd[2037]: pipewire-pulse.socket - PipeWire PulseAudio was skipped because of an unmet condition check (ConditionUser=!root).
июн 22 03:34:19 sys-net systemd[2037]: pipewire.socket - PipeWire Multimedia System Sockets was skipped because of an unmet condition check (ConditionUser=!root).
июн 22 03:34:19 sys-net systemd[2037]: Listening on dbus.socket - D-Bus User Message Bus Socket.
июн 22 03:34:19 sys-net systemd[2037]: Reached target sockets.target - Sockets.
июн 22 03:34:19 sys-net systemd[2037]: Reached target basic.target - Basic System.
июн 22 03:34:19 sys-net systemd[1]: Started user@0.service - User Manager for UID 0.
июн 22 03:34:19 sys-net systemd[1]: Started session-c4.scope - Session c4 of User root.
июн 22 03:34:19 sys-net systemd[2037]: Starting dbus.service - D-Bus User Message Bus...
июн 22 03:34:19 sys-net systemd[2037]: pipewire.service - PipeWire Multimedia Service was skipped because of an unmet condition check (ConditionUser=!root).
июн 22 03:34:19 sys-net systemd[2037]: filter-chain.service: Bound to unit pipewire.service, but unit isn't active.
июн 22 03:34:19 sys-net systemd[2037]: Dependency failed for filter-chain.service - PipeWire filter chain daemon.
июн 22 03:34:19 sys-net systemd[2037]: filter-chain.service: Job filter-chain.service/start failed with result 'dependency'.
июн 22 03:34:19 sys-net systemd[2037]: wireplumber.service: Bound to unit pipewire.service, but unit isn't active.
июн 22 03:34:19 sys-net systemd[2037]: Dependency failed for wireplumber.service - Multimedia Service Session Manager.
июн 22 03:34:19 sys-net systemd[2037]: wireplumber.service: Job wireplumber.service/start failed with result 'dependency'.
июн 22 03:34:19 sys-net systemd[2037]: pipewire-pulse.service - PipeWire PulseAudio was skipped because of an unmet condition check (ConditionUser=!root).
июн 22 03:34:19 sys-net systemd[2037]: Reached target default.target - Main User Target.
июн 22 03:34:19 sys-net systemd[2037]: Started dbus.service - D-Bus User Message Bus.
июн 22 03:34:19 sys-net systemd[2037]: Startup finished in 108ms.
июн 22 03:34:20 sys-net kernel: vhci_hcd vhci_hcd.0: pdev(0) rhport(0) sockfd(0)
июн 22 03:34:20 sys-net kernel: vhci_hcd vhci_hcd.0: devid(131078) speed(3) speed_str(high-speed)
июн 22 03:34:20 sys-net kernel: vhci_hcd vhci_hcd.0: Device attached
июн 22 03:34:20 sys-net kernel: usb 2-1: new high-speed USB device number 3 using vhci_hcd
июн 22 03:34:20 sys-net kernel: usb 2-1: SetAddress Request (3) to port 0
июн 22 03:34:20 sys-net kernel: usb 2-1: New USB device found, idVendor=12d1, idProduct=14db, bcdDevice= 1.02
июн 22 03:34:20 sys-net kernel: usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
июн 22 03:34:20 sys-net kernel: usb 2-1: Product: HUAWEI_MOBILE
июн 22 03:34:20 sys-net kernel: usb 2-1: Manufacturer: HUAWEI_MOBILE
июн 22 03:34:20 sys-net kernel: cdc_ether 2-1:1.0 eth0: register 'cdc_ether' at usb-vhci_hcd.0-1, CDC Ethernet Device, 00:1e:10:1f:00:00
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.6721] manager: (eth0): new Ethernet device (/org/freedesktop/NetworkManager/Devices/6)
июн 22 03:34:20 sys-net kernel: cdc_ether 2-1:1.0 enx001e101f0000: renamed from eth0
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.6980] device (eth0): interface index 5 renamed iface from 'eth0' to 'enx001e101f0000'
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7084] device (enx001e101f0000): state change: unmanaged -> unavailable (reason 'managed', sys-iface-state: 'external')
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7113] settings: (enx001e101f0000): created default wired connection 'ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ΅ соСдинСниС 1'
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7119] device (enx001e101f0000): carrier: link connected
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7121] device (enx001e101f0000): state change: unavailable -> disconnected (reason 'carrier-changed', sys-iface-state: 'managed')
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7151] policy: auto-activating connection 'ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ΅ соСдинСниС 1' (bb5e8606-7feb-3880-b7e9-9df64f5035bd)
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7155] device (enx001e101f0000): Activation: starting connection 'ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ΅ соСдинСниС 1' (bb5e8606-7feb-3880-b7e9-9df64f5035bd)
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7156] device (enx001e101f0000): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7162] manager: NetworkManager state is now CONNECTING
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7163] device (enx001e101f0000): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7169] device (enx001e101f0000): state change: config -> ip-config (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:20 sys-net NetworkManager[598]: <info>  [1750563260.7174] dhcp4 (enx001e101f0000): activation: beginning transaction (timeout in 45 seconds)
июн 22 03:34:20 sys-net qrexec-agent[2035]: pam_unix(qrexec:session): session closed for user root
июн 22 03:34:20 sys-net qrexec-agent[2033]: 2025-06-22 03:34:20.729 qrexec-agent[2033]: qrexec-agent-data.c:288:handle_new_process_common: pid 2035 exited with 0
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.1738] dhcp6 (enx001e101f0000): activation: beginning transaction (timeout in 45 seconds)
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.1984] dhcp6 (enx001e101f0000): state changed new lease
июн 22 03:34:22 sys-net dbus-daemon[500]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service' requested by ':1.6' (uid=0 pid=598 comm="/usr/sbin/NetworkManager --no-daemon")
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.2002] device (enx001e101f0000): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:22 sys-net systemd[1]: Starting NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service...
июн 22 03:34:22 sys-net dbus-daemon[500]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
июн 22 03:34:22 sys-net systemd[1]: Started NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service.
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.2432] device (enx001e101f0000): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.2438] device (enx001e101f0000): state change: secondaries -> activated (reason 'none', sys-iface-state: 'managed')
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.2440] manager: NetworkManager state is now CONNECTED_LOCAL
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.2441] device (enx001e101f0000): Activation: successful, device activated.
июн 22 03:34:22 sys-net systemd[1]: Stopping qubes-updates-proxy.service - Qubes updates proxy (tinyproxy)...
июн 22 03:34:22 sys-net tinyproxy[1248]: Shutting down.
июн 22 03:34:22 sys-net systemd[1]: qubes-updates-proxy.service: Deactivated successfully.
июн 22 03:34:22 sys-net systemd[1]: Stopped qubes-updates-proxy.service - Qubes updates proxy (tinyproxy).
июн 22 03:34:22 sys-net systemd[1]: Started qubes-updates-proxy.service - Qubes updates proxy (tinyproxy).
июн 22 03:34:22 sys-net tinyproxy-wrapper[2150]: Found tinyproxy at /usr/bin/tinyproxy
июн 22 03:34:22 sys-net tinyproxy-wrapper[2150]: WARNING: obsolete config item on line 14
июн 22 03:34:22 sys-net tinyproxy-wrapper[2150]: WARNING: obsolete config item on line 15
июн 22 03:34:22 sys-net tinyproxy-wrapper[2150]: WARNING: obsolete config item on line 16
июн 22 03:34:22 sys-net tinyproxy-wrapper[2150]: WARNING: obsolete config item on line 17
июн 22 03:34:22 sys-net tinyproxy[2150]: Initializing tinyproxy ...
июн 22 03:34:22 sys-net tinyproxy[2150]: Reloading config file
июн 22 03:34:22 sys-net tinyproxy[2150]: Reloading config file finished
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.7794] dhcp4 (enx001e101f0000): state changed new lease, address=192.168.8.103
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.7851] manager: NetworkManager state is now CONNECTED_SITE
июн 22 03:34:22 sys-net NetworkManager[598]: <info>  [1750563262.7874] policy: set 'ΠŸΡ€ΠΎΠ²ΠΎΠ΄Π½ΠΎΠ΅ соСдинСниС 1' (enx001e101f0000) as default for IPv4 routing and DNS
июн 22 03:34:23 sys-net ModemManager[589]: <info>  [base-manager] couldn't check support for device '/sys/devices/platform/vhci_hcd.0/usb2/2-1': not supported by any plugin
июн 22 03:34:23 sys-net systemd[1]: Stopping qubes-updates-proxy.service - Qubes updates proxy (tinyproxy)...
июн 22 03:34:23 sys-net tinyproxy[2150]: Shutting down.
июн 22 03:34:23 sys-net systemd[1]: qubes-updates-proxy.service: Deactivated successfully.
июн 22 03:34:23 sys-net systemd[1]: Stopped qubes-updates-proxy.service - Qubes updates proxy (tinyproxy).
июн 22 03:34:23 sys-net systemd[1]: Started qubes-updates-proxy.service - Qubes updates proxy (tinyproxy).
июн 22 03:34:23 sys-net tinyproxy-wrapper[2160]: Found tinyproxy at /usr/bin/tinyproxy
июн 22 03:34:23 sys-net tinyproxy-wrapper[2160]: WARNING: obsolete config item on line 14
июн 22 03:34:23 sys-net tinyproxy-wrapper[2160]: WARNING: obsolete config item on line 15
июн 22 03:34:23 sys-net tinyproxy-wrapper[2160]: WARNING: obsolete config item on line 16
июн 22 03:34:23 sys-net tinyproxy-wrapper[2160]: WARNING: obsolete config item on line 17
июн 22 03:34:23 sys-net tinyproxy[2160]: Initializing tinyproxy ...
июн 22 03:34:23 sys-net tinyproxy[2160]: Reloading config file
июн 22 03:34:23 sys-net tinyproxy[2160]: Reloading config file finished
июн 22 03:34:33 sys-net systemd[1]: NetworkManager-dispatcher.service: Deactivated successfully.
1 Like

Yes… Can you see the lines where the USB device appears? It is configured to act as an ethernet device, not a modem. A modem interface would probably create a device with a name similar to β€˜/dev/ttyUSB0’.

The ethernet interface gives easy and fast networking, but any sending of SMS is probably in the web interface, except if either:

  1. there is a network port giving access to the AT interface, e.g. with an ssh access. You can either look in the manual (best!?), or install and run nmap address-or-hostname, but giving the address or hostname you use in Firefox for the web interface.
  2. There is another hidden usb device, but it should give some sign in journalctl. lsusb command can show a list.