How to? Uk-China Remote Desktop

Moderators: kirk, jamesbond, p310don, JakeSFR, step, Forum moderators

Post Reply
User avatar
stemsee
Posts: 656
Joined: Sun Jul 26, 2020 8:11 am
Location: lattitude 0
Has thanked: 160 times
Been thanked: 104 times
Contact:

How to? Uk-China Remote Desktop

Post by stemsee »

FatDog has several tools for viewing and controlling your computer remotely.

I successfully controlled my FatDog laptop from Android on lan and wan. Sometime ago.

Now I have bought another Acer 714 laptop, same as mine. And I have installed FatDog on both internal eMMC drives. One will be sent to my student, for the purpose of 1) teaching school subjects (file exchanges, interaction). 2) teaching FatDog Linux. 3) Controlling usage (games). 4) Giving access to my internet.

The student is in China I am in the UK. I need to set both machines up to connect automatically to eachother over wan. I tried following several tutorials and help instructions (backseat driver). But the terminology and the reality confounded my efforts.

Could someone set out the needed steps using the apps already in FatDog?

Cheers
stemsee

User avatar
stemsee
Posts: 656
Joined: Sun Jul 26, 2020 8:11 am
Location: lattitude 0
Has thanked: 160 times
Been thanked: 104 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by stemsee »

I have configured psip, and no-ip on both devices to sync up ip addresses.

No-ip hostnames have been acquired . No-ip binary installed on both machines and has been setup to run a script. So what goes into that script to connect two FatDog machines across nations?

It Should start backseat driver and connect the two computers, one as client one as host?, Or teacher / student.

So after filling in all fields in Bach seat driver (bsd) how do I save a configuration to reload?

Does bsdriver have cli options?

Thanks
Stem

Clarity
Posts: 3270
Joined: Fri Jul 24, 2020 10:59 pm
Has thanked: 1347 times
Been thanked: 438 times

Re: How to? Uk-China Remote Desktop

Post by Clarity »

Safe Solution #1
@jamesbond & @kirk has XRDP couple solutions. One uses direct encrypted (RDP protocol) session and one browser session approaches. These session approaches afford a complete multimedia session via a simple interface.

I have an old start-finish setup document for Fatdog v5/v6 but NOT for the latest versions. I think there is a webpage by FATDOG leader or team somewhere, if I remember.

This solutions has the ability to talk not only to Linux systems but also MS & MACs systems. AND, you can connect via Android app.

Maybe, I'll open a FATDOG XRDP thread as soon as I can get around to setup and test.

Safe Solution #2
There is another solution for interactive connections: Chrome browser "Remote Desktop" where one browser connects to another via the internet...as well.

step
Posts: 510
Joined: Thu Aug 13, 2020 9:55 am
Has thanked: 50 times
Been thanked: 179 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by step »

stemsee wrote: Sun May 08, 2022 3:29 pm

I have configured psip, and no-ip on both devices to sync up ip addresses.

No-ip hostnames have been acquired . No-ip binary installed on both machines and has been setup to run a script. So what goes into that script to connect two FatDog machines across nations?

I don't know. What did you have in mind when you set up the no-ip?

It Should start backseat driver and connect the two computers, one as client one as host?, Or teacher / student.

Backseat Driver (BSD) provides three things: interactive, unidirectional control of a student's remote desktop; file transfer (one file or one folder at the time; duplex PSIP calls between student and teacher. Visually:

teacher (UK) ----> (remote control the student's) ---> desktop (China)
teacher (UK) <--------> (send/receive file/folder) <---> student (China)
teacher (UK) <---> call/answer student <---> (PSIP) <------> student answer/call teacher (China)

To provide the necessary connections, BSD sets up a virtual private **LAN** (VPL) between both Fatdog PCs. So, the real IP of these machines doesn't matter because they will be talking to each other with a 192.168.X.Y IP address. Of course both machine must be connected to the internet to begin with, and they must be able to connect to a shared VPN server in the middle. To keep the connection private teacher and student share a community secret name and a community secret password. When you set up BSD configuration files you need to pay attention to the IP addresses and the secrets. The VPN server will be the same for both student and teacher -- an in fact don't change the preconfigured VPN server unless you know what you're doing. The IP X will be the same for both. The Y will be different, Y1 for teacher and Y2 in student - Y in the range 1..254. Therefore the VPL will be 192.168.X.Y1 === 192.168.X.Y2. PSIP calls use the same VPL. Pay attention that psip (the program) is completely independent of BSD's GUI, so you need to learn how to use psip. If you don't want or can't use psip for talking, you and your student could supplement with a jitsy audio/video conference; this is a free service from numerous websites.

So after filling in all fields in Bach seat driver (bsd) how do I save a configuration to reload?

When you exit BSD the configuration is saved to ~/.config/bsdriver.conf and ~/.bsdriver.sip.conf

Does bsdriver have cli options?

Yes: --config followed by the BSD configuration file name. Instead for psip you get:

Code: Select all

# psip --help
psip [-c|--config-file config-file] [--log-file logfile] [--version|-v] [--expand-buddies]
User avatar
stemsee
Posts: 656
Joined: Sun Jul 26, 2020 8:11 am
Location: lattitude 0
Has thanked: 160 times
Been thanked: 104 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by stemsee »

Excellent @step

Ahh...! I understand better. I got it working. However I experienced a problem with file transfer , seems file has to be a tar archive. And on fail creates several empty directories in root.

But RDT works well .

Surf shark VPN has 82% discount for 26 months @£57 , and works in china, unlimited number of devices.

Hopefully should work.

Last edited by stemsee on Tue May 10, 2022 5:39 pm, edited 1 time in total.
User avatar
p310don
Posts: 290
Joined: Tue Dec 03, 2019 7:17 am
Location: Brisbane, Australia
Has thanked: 55 times
Been thanked: 92 times

Re: How to? Uk-China Remote Desktop

Post by p310don »

It's ready to roll @stemsee . Just change your name and pass when you press the config button. Make sure both server and client have the same details and you're good to go.

step
Posts: 510
Joined: Thu Aug 13, 2020 9:55 am
Has thanked: 50 times
Been thanked: 179 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by step »

stemsee wrote: Tue May 10, 2022 12:03 pm

However I experienced a problem with file transfer , seems file has to be a tar archive. And on fail creates several empty directories in root.

No, that isn't what's happening. UNDER the hood, The receiver creates a local folder (I think the name includes a timestamp) then waits for the tar file. The sender sends that tar file (this is The Sending). BSD automatically wraps a tar file around the sender's source file or folder. The receiver gets the tar file and unwraps it inside the folder it had created. If you see an empty folder it means that The Sending failed. OVER the hood, the receiver MUST start receiving BEFORE the sender can start sending.

User avatar
stemsee
Posts: 656
Joined: Sun Jul 26, 2020 8:11 am
Location: lattitude 0
Has thanked: 160 times
Been thanked: 104 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by stemsee »

I did follow the advice of the red warning boxes! I pressed receive then pressed send. I may have made too many attempts in a short time. I'll try again tomorrow.

I bought a two yeas surfshark subscription, which works using openvpn on cli to connect to surfshark servers, a feature i will add to S.N.ApP.

User avatar
p310don
Posts: 290
Joined: Tue Dec 03, 2019 7:17 am
Location: Brisbane, Australia
Has thanked: 55 times
Been thanked: 92 times

Re: How to? Uk-China Remote Desktop

Post by p310don »

For file transfer using BSD I have found it easier to use the normal file sharing utility in FD.

When connected to the remote computer, you can go to home -> Shares -> click the "Network" button to scan for shares, and the remote computer should show up. Then you can just transfer like it's a local file using ROX.

User avatar
stemsee
Posts: 656
Joined: Sun Jul 26, 2020 8:11 am
Location: lattitude 0
Has thanked: 160 times
Been thanked: 104 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by stemsee »

So far, student / teacher laptops both have the same surfshark vpn acccount and server address. Both have BSD configure and working on an android hotspot. Im hoping this translates to working across the great firewall of China.

Both PCs are connected to the android hotspot. Then connected both to the same vpn server, and the same external ip is assigned to both PCs!. Then started up bsdriver, and rdp works, a bit more laggy. Sent file no problem.

I still think that a vpn is not necessary, just use no-ip service to coordinate ip addresses (because they are not static), with direct laptop to laptop ssh tunnel.

fatdoguser
Posts: 175
Joined: Sat Aug 05, 2023 10:54 am
Has thanked: 22 times
Been thanked: 79 times

Re: How to? Uk-China Remote Desktop

Post by fatdoguser »

BackSeatDriver looks to be based on x11vnc, unsurprising as that is better suited to many sharing the same vnc desktop.

On a point of note x11vnc's -wait default is 20, the time in milliseconds between screen polls. 1000ms per second / 20 = 50 frames per second.

Consider you watch a video at 1080p (1920x1080), with a 32 bit color depth (rgb888 plus blending byte) at a rate of 50 frames per second, 1920x1080x4x50 = near 400MBytes of screen data every second. That's a big ask of compression to get that down to 2.5MB/second that some may be restricted to 'upload' at via a 100Mbs download, 20Mbs upload ISP service (asymmetric) (20Mbs = 2.5MBytes/second).

A substantial reduction can be achieved by scaling to 480p, 640x480 resolution, AND/OR by reducing the frame rate. Reasonable quality can still generally be observed at 10fps. Also if possible reduce the colour depth down to rgb565 (2 bytes/16 bits) - as that still tends to be good-enough color quality.

640x480x2*10 = a little under 6MB/second, 48Mbs. None compressed. Video compression can more often usually halve or more that, as sequential individual frames tend to be similar.

In short, adding a -wait 100 (or thereabouts to reflect of the order 10 frames/second) to BackSeatDrivers existing x11vnc commands is a relatively trivial change that likely would see relatively little difference in general operation look-n-feel, but a substantial reduction in data flow

I haven't tried/tested that myself, but I do use vnc a lot and 10fps/16 bit depth does make a considerable difference to my usage when calling-home (yes my ISP is one of those that caps upload speeds to 20Mbs).

fatdoguser
Posts: 175
Joined: Sat Aug 05, 2023 10:54 am
Has thanked: 22 times
Been thanked: 79 times

Re: How to? Uk-China Remote Desktop

Post by fatdoguser »

I see that there's also a

-slow_fb time

x11vnc switch option, that might be a alternative/supplement to the -wait switch.

fatdoguser
Posts: 175
Joined: Sat Aug 05, 2023 10:54 am
Has thanked: 22 times
Been thanked: 79 times

Re: How to? Uk-China Remote Desktop

Post by fatdoguser »

step wrote: Mon May 09, 2022 11:56 am
stemsee wrote: Sun May 08, 2022 3:29 pm

I have configured psip, and no-ip on both devices to sync up ip addresses.

No-ip hostnames have been acquired . No-ip binary installed on both machines and has been setup to run a script. So what goes into that script to connect two FatDog machines across nations?

I don't know. What did you have in mind when you set up the no-ip?

It Should start backseat driver and connect the two computers, one as client one as host?, Or teacher / student.

Backseat Driver (BSD) provides three things: interactive, unidirectional control of a student's remote desktop; file transfer (one file or one folder at the time; duplex PSIP calls between student and teacher. Visually:

teacher (UK) ----> (remote control the student's) ---> desktop (China)
teacher (UK) <--------> (send/receive file/folder) <---> student (China)
teacher (UK) <---> call/answer student <---> (PSIP) <------> student answer/call teacher (China)

To provide the necessary connections, BSD sets up a virtual private LAN (VPL) between both Fatdog PCs. So, the real IP of these machines doesn't matter because they will be talking to each other with a 192.168.X.Y IP address. Of course both machine must be connected to the internet to begin with, and they must be able to connect to a shared VPN server in the middle. To keep the connection private teacher and student share a community secret name and a community secret password. When you set up BSD configuration files you need to pay attention to the IP addresses and the secrets. The VPN server will be the same for both student and teacher -- an in fact don't change the preconfigured VPN server unless you know what you're doing. The IP X will be the same for both. The Y will be different, Y1 for teacher and Y2 in student - Y in the range 1..254. Therefore the VPL will be 192.168.X.Y1 === 192.168.X.Y2. PSIP calls use the same VPL. Pay attention that psip (the program) is completely independent of BSD's GUI, so you need to learn how to use psip. If you don't want or can't use psip for talking, you and your student could supplement with a jitsy audio/video conference; this is a free service from numerous websites.

So after filling in all fields in Bach seat driver (bsd) how do I save a configuration to reload?

When you exit BSD the configuration is saved to ~/.config/bsdriver.conf and ~/.bsdriver.sip.conf

Does bsdriver have cli options?

Yes: --config followed by the BSD configuration file name. Instead for psip you get:

Code: Select all

# psip --help
psip [-c|--config-file config-file] [--log-file logfile] [--version|-v] [--expand-buddies]

@step

I note that bsd uses bytemark. Is that a general/open (free) service that bsd is by default piggybacking/using?

My thoughts are that if so then its a potential means to have access to a ssh server that's behind a firewall, all external ports closed, but where external access might be achieved via bytemark/n2n ... i.e.

Install n2n-edge from gslapt

Server box with ssh server (sshd) running, but that is behind a firewall with no ports open, creates similar to bsd's 'student' ...

Code: Select all

modprobe tun
n2n-edge -d mytun -M 1000 -a 192.168.6.98 -c my-group \
         -k secret-password -l bytemark.leggewie.org:1234

... so allocated a IP of 192.168.6.98

On laptop connect into that community/key group (so only those that know the community name and key/password can join that group)

Code: Select all

n2n-edge -d mytun -M 1000 -a 192.168.6.99 -c my-group \
         -k secret-password -l bytemark.leggewie.org:1234 &

to connect, and then run
ssh 192.168.6.98
to ssh into the ssh server box - that's otherwise behind a firewall

That however assumes that the server maintains a persistent bytemark connection. And presumably has the in and out data/traffic flow as/when ssh connections/file-transfers are made. I would have though that leaving such a session running 24/7 would be frowned upon by bytemark? But otherwise would be useful in the sense that as soon as you otherwise open up a ssh port to external access it tends to be blitzed with connection attempts/hacks.

BTW backseatdriver works well. I've just spent some time playing around with modifying the script to auto start and also forward sound, i.e. control a remote box where you can start the web browser and both see/hear what is viewed/listened to within that browser/desktop. The alignment of lip-sync is impressive, in other cases I've tried the sound has tended to lag the video due to the initial loading up of the audio buffer before sound transmission commences. :thumbup2:

step
Posts: 510
Joined: Thu Aug 13, 2020 9:55 am
Has thanked: 50 times
Been thanked: 179 times
Contact:

Re: How to? Uk-China Remote Desktop

Post by step »

fatdoguser wrote: Wed Jan 31, 2024 6:38 pm

I note that bsd uses bytemark. Is that a general/open (free) service that bsd is by default piggybacking/using?

Yes.

My thoughts are that if so then its a potential means to have access to a ssh server that's behind a firewall, all external ports closed, but where external access might be achieved via bytemark/n2n ... i.e.

Install n2n-edge from gslapt

n2n-edge is pre-installed in Fatdog. There are three packages providing (possibly incompatible) protocol variations.

  • n2n-v1-2015.03-x86_64-1
  • n2n-v2-2015.03-x86_64-1
  • n2n-v2-ntop-2.8-x86_64-1

from which the following commands: n2n-edge, n2n-supernode, n2n-v2-benchmark, n2n-v2-edge, and n2n-v2-supernode. Supernode is the server software. You can setup your own supernode. Bytemark is a supernode. The last time I checked, a couple of years ago, development was active at the ntop project site. I found out that once upon a time there used to be an N2N implementation also for Windows but I don't know if it's still around.

Server box with ssh server (sshd) running, but that is behind a firewall with no ports open, creates similar to bsd's 'student' ...

Code: Select all

modprobe tun
n2n-edge -d mytun -M 1000 -a 192.168.6.98 -c my-group \
         -k secret-password -l bytemark.leggewie.org:1234

... so allocated a IP of 192.168.6.98

On laptop connect into that community/key group (so only those that know the community name and key/password can join that group)

Code: Select all

n2n-edge -d mytun -M 1000 -a 192.168.6.99 -c my-group \
         -k secret-password -l bytemark.leggewie.org:1234 &

to connect, and then run
ssh 192.168.6.98
to ssh into the ssh server box - that's otherwise behind a firewall

Yes, that is the way. Essentially an N2N VPN is a private LAN.

That however assumes that the server maintains a persistent bytemark connection. And presumably has the in and out data/traffic flow as/when ssh connections/file-transfers are made. I would have though that leaving such a session running 24/7 would be frowned upon by bytemark? But otherwise would be useful in the sense that as soon as you otherwise open up a ssh port to external access it tends to be blitzed with connection attempts/hacks.

I understand what you're saying. I can't answer for bytemark and their motives for offering such a free service.

BTW backseatdriver works well.

Backseat driver was created by @smokey01 and @CatDude back in 2019, I think. They get all the credit. I know some forum members use bsd for remote access to their business. I use it to help some friends of mine with Linux.

I've just spent some time playing around with modifying the script to auto start and also forward sound, i.e. control a remote box where you can start the web browser and both see/hear what is viewed/listened to within that browser/desktop. The alignment of lip-sync is impressive, in other cases I've tried the sound has tended to lag the video due to the initial loading up of the audio buffer before sound transmission commences. :thumbup2:

I have written my own script - sort of a successor to BSD - during covid. The things you do when you're locked down :) The new, still unreleased, script uses SIP for audio (the audio connection protocols without PSIP GUI) essentially because SIP can set up a conference board. Trouble with SIP, at least when going through N2N/Bytemark, is that audio quality can be bad in terms of background noise and echo.

jamesbond
Posts: 540
Joined: Tue Aug 11, 2020 3:02 pm
Location: The Pale Blue Dot
Has thanked: 73 times
Been thanked: 292 times

Re: How to? Uk-China Remote Desktop

Post by jamesbond »

step wrote: Wed Jan 31, 2024 9:35 pm

I found out that once upon a time there used to be an N2N implementation also for Windows but I don't know if it's still around.

https://github.com/lucktu/n2n

Post Reply

Return to “FatDog”