Auto-hosts do not include fqdn
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
sshuttle (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Medium
|
Billy Olsen | ||
Bionic |
Fix Released
|
Medium
|
Billy Olsen |
Bug Description
The --H, --auto-hosts option does not currently include fqdn and in fact removes the fqdn entries. This is blocking the use of sshuttle for things like accessing a Graylog server which links back to itself via fqdn.
This has been fixed with pull request #173 [0] in Oct of 2017 adds this functionality and works for the Graylog forwarding which I've been trying to use it for.
[0]: https:/
[Impact]
Some services which may be remotely accessed over an sshuttle vpn tunnel may require full fqdn access to remote machines. Depending on the remote application, it may fail to function properly if the initiator system cannot resolve hosts by fqdn's. Graylog mentioned above, is one such example of this.
This patch works by changing the host watch functionality to match more than just hostnames found at the remote site. If fqdns are also found, then this patch will ensure they get included in the initator's local /etc/host file.
[Test Case]
1. Initiate an sshuttle connection at a remote endpoint w/ the -H or --auto-hosts parameter.
$ sshuttle 10.5.0.0/16 -r 10.230.65.47 --daemon -H
2. Observe the initiator's /etc/hosts file
- Without the patch, observe only hostnames are populated
- With the patch, hostnames and fqdns are populated
[Regression Potential]
This area of code is limited to only affecting those users using the --auto-hosts parameter. That being said, the change is to expand the regular expressions which identify remote hostnames to include/allow fqdns. It may be possible that this introduces a naming collision with the initiator's DNS resolution where they relied on foo and foo.some.domain resolve to uniquely different hosts. This may be an unwanted side-effect, but upstream seems not to be concerned with this.
description: | updated |
description: | updated |
Changed in sshuttle (Ubuntu): | |
status: | Confirmed → Fix Released |
Changed in sshuttle (Ubuntu Bionic): | |
status: | New → In Progress |
Changed in sshuttle (Ubuntu Xenial): | |
status: | New → In Progress |
Changed in sshuttle (Ubuntu Bionic): | |
assignee: | nobody → Billy Olsen (billy-olsen) |
Changed in sshuttle (Ubuntu Xenial): | |
assignee: | nobody → Billy Olsen (billy-olsen) |
Changed in sshuttle (Ubuntu Bionic): | |
importance: | Undecided → Medium |
Changed in sshuttle (Ubuntu Xenial): | |
importance: | Undecided → Medium |
Looks like the patch identified (commit 29cd75b) is in the v0.78.4 version:
$ git tag --contains 29cd75b
v0.78.4
which is in cosmic, so this would apply to bionic and xenial. Not sure its worth backporting all the way to trusty.
$ rmadison sshuttle
sshuttle | 0.54-1 | precise/universe | source, all
sshuttle | 0.54-2 | trusty/universe | source, all
sshuttle | 0.76-1 | xenial/universe | source, all
sshuttle | 0.78.3-1 | bionic/universe | source, all
sshuttle | 0.78.4-1 | cosmic/universe | source, all
I've built packages with this patch included in https:/ /launchpad. net/~billy- olsen/+ archive/ ubuntu/ sshuttle- lp1787245