Fetch directives from remote (HTTP?) server.

This is where we can discuss what we would like to see added or changed in OpenVPN.

Moderators: TinCanTech, TinCanTech, TinCanTech, TinCanTech, TinCanTech, TinCanTech

Post Reply
Clodo
OpenVPN User
Posts: 37
Joined: Mon Oct 10, 2011 11:25 pm

Fetch directives from remote (HTTP?) server.

Post by Clodo » Tue Mar 26, 2013 2:42 pm

There are a lot of VPN service based on OpenVPN. All service release .ovpn files to customers, and need to ask to customers to reimport updated version when some directives changes, or simply to update the list of 'remote' servers. Sometime it's an annoying procedure for customers, for example updating DD-WRT routers or Tomato.

Wishlist:
A directive "fetch" that have only one param, an url to fetch.
When OpenVPN process the .ovpn, if this directive exists, try to fetch the url, obtain a list of directives, and simply append to already existing directives.

This features allow servers maintainer to control directives used by customers without need to distribute updated configuration every time.

Just my cents.

User avatar
maikcat
Forum Team
Posts: 4200
Joined: Wed Jan 12, 2011 9:23 am
Location: Athens,Greece
Contact:

Re: Fetch directives from remote (HTTP?) server.

Post by maikcat » Wed Mar 27, 2013 9:43 am

Wishlist:
A directive "fetch" that have only one param, an url to fetch.
and if the url is poisoned somehow (dns poisoning) security goes down the drain....

just my 2 cents

Michael.
Amiga 500 , Zx +2 owner
Long live Dino Dini (Kick off 2 Creator)

Inflammable means flammable? (Dr Nick Riviera,Simsons Season13)

"objects in mirror are losing"

Clodo
OpenVPN User
Posts: 37
Joined: Mon Oct 10, 2011 11:25 pm

Re: Fetch directives from remote (HTTP?) server.

Post by Clodo » Wed Mar 27, 2013 11:46 am

maikcat wrote:
Wishlist:
A directive "fetch" that have only one param, an url to fetch.
and if the url is poisoned somehow (dns poisoning) security goes down the drain....

just my 2 cents

Michael.
Maybe can accept only HTTPS urls with valid certificate.

User avatar
maikcat
Forum Team
Posts: 4200
Joined: Wed Jan 12, 2011 9:23 am
Location: Athens,Greece
Contact:

Re: Fetch directives from remote (HTTP?) server.

Post by maikcat » Wed Mar 27, 2013 12:34 pm

Maybe can accept only HTTPS urls with valid certificate.
http://wiki.squid-cache.org/Features/HTTPS

i think the idea of automaticly adding directives to config file will
not scale well...

what about after 10 *automatic* additions of remote directives,
how your client will respond...?

anyway, my personal opinion is that config should be constructed with care..

regards
Michael.
Amiga 500 , Zx +2 owner
Long live Dino Dini (Kick off 2 Creator)

Inflammable means flammable? (Dr Nick Riviera,Simsons Season13)

"objects in mirror are losing"

Clodo
OpenVPN User
Posts: 37
Joined: Mon Oct 10, 2011 11:25 pm

Re: Fetch directives from remote (HTTP?) server.

Post by Clodo » Thu Mar 28, 2013 12:54 pm

maikcat wrote: i think the idea of automaticly adding directives to config file will
not scale well...

what about after 10 *automatic* additions of remote directives,
how your client will respond...?
Sorry but i don't understand well your question.



Think about only a fetching 'remote' directives.
Like:

Code: Select all

remote-fetch https://myserver.com/current-us.txt

Many VPN providers give to customers .ovpn configuration files with many remote directive,
with a sort of very-basic load balancing by using 'remote-random' directive.

I'm thinking about a more serious load-balancing system.

Specify a list of remote directives it's a problem when servers are added or removed,
because need to resend to customers the updated configuration file (any many customers use DD-WRT, Tomato, etc, not user friendly to update frequently).
And there is only a basic (random based) load-balancing.


Specify a DNS name with multiple A records isn't a good solution for me:
- The minimum TTL time is one hour. With issue about caching of many public DNS (like GoogleDNS).
- The list of A records are random, isn't possibile to use a specific preferred order of servers.
- I notice many issue with DNS/OpenVPN, i write a report here.

With a "remote-fetch https://myserver.com/current-us.txt", it's the VPN providers that
can implement a load-balancing monitor, for example by update the remote file by cron,
listing for first the servers with low-load (or high-bandwidth available).


I really wish a feature like that.
I hope we can decide here if is acceptable for OpenVPN community,
after that i will rent a C++ developer to implement and submit it to OpenVPN developers for review.

Post Reply