Leaderboard
Popular Content
Showing content with the highest reputation on 11/26/23 in all areas
-
1 pointHello! We're very glad to inform you that AirVPN Suite version 2.0.0 alpha 1 is now available. UPDATE 2023-11-24: version 2.0.0 alpha 2 is now available. UPDATE 2024-05-14: version 2.0.0 beta 1 is now available. UPDATE 2024-12-16: version 2.0.0 beta 2 is now available. UPDATE 2025-02-13: version 2.0.0 beta 3 is now available. UPDATE 2025-02-14: version 2.0.0 beta 4 is now available. UPDATE 2025-04-04: version 2.0.0 beta 5 is now available. UPDATE 2025-04-16: version 2.0.0 Release Candidate 1 is now available PLEASE NOTE THAT FROM NOW ON COMPATIBILITY WITH DEBIAN 10 AND ITS DERIVATIVES IS LOST, MAINLY BECAUSE THE SUITE IS NOW C++20 COMPLIANT. x86_64 LEGACY VERSION IS SUITABLE FOR DEBIAN 11 AirVPN Suite 2.0.0 introduces AirVPN's exclusive per app traffic splitting system as well as some bug fixes, revised code in order to pave the way towards the final and stable release, WireGuard support, and the latest OpenVPN3-AirVPN 3.11 library. Please see the respective changelogs for a complete list of preliminary changes for each component of the suite. If you feel adventurous and you wish to test this beta version, please feel free to report any glitch, bug and problem in this very thread. The 2.0.0 Release Candidate 1 Suite includes: Bluetit: lightweight, ultra-fast D-Bus controlled system daemon providing full connectivity and integration to AirVPN servers, or generic OpenVPN and WireGuard servers. Bluetit can also enforce Network Lock and/or connect the system to AirVPN during the bootstrap Goldcrest: Bluetit client, allowing full integration with AirVPN servers, users, keys, profiles as well as generic OpenVPN and WireGuard servers Hummingbird: lightweight and standalone binary for generic OpenVPN and WireGuard server connections Cuckoo: traffic split manager, granting full access and functionality to AirVPN's traffic split infrastructure airsu: a "run and forget" tool to automatically set and enable the user environment for the X.Org or Wayland based ecosystem without any user input WireGuard support WireGuard support is now available in Bluetit and Hummingbird. OpenVPN or WireGuard selection is controlled by Bluetit run control file option airvpntype or by Goldcrest option -f (short for --air-vpn-type). Possible values: openvpn, wireguard. Default: openvpn. The option is documented in the 1.3.0 manual as well. Bluetit run control file (/etc/airvpn/bluetit.rc) option: airvpntype: (string) VPN type to be used for AirVPN connections. Possible values: wireguard, openvpn. Default: wireguard Goldcrest option: --air-vpn-type, -f : VPN type for AirVPN connection <wireguard|openvpn> Suspend and resume services for systemd based systems For your comfort, the installation script can create suspend and resume services in systemd based systems, according to your preferences. allowing a more proper management of VPN connections when the system is suspended and resumed. The network connection detection code has also been rewritten to provide more appropriate behaviour. Asynchronous mode A new asynchronous mode (off by default) is supported by Bluetit and Goldcrest, allowing asynchronous connections. Network Lock can be used accordingly in asynchronous connections. Please consult the readme.md file included in every tarball for more information and details. Word completion on bash and zsh Auto completion is now available by pressing the TAB key when entering any Goldcrest or Hummingbird option and filename on a bash or zsh interpreter. Auto completion files are installed automatically by the installation script. AirVPN's VPN traffic splitting AirVPN Suite version 2.0.0 introduces traffic splitting by using a dedicated network namespace, therefore completely separating the VPN traffic from unencrypted and "out of the tunnel" traffic. The VPN traffic is carried out in the default (main) namespace, ensuring all system data and traffic to be encrypted and tunneled into the VPN by default. No clear and unencrypted data are allowed to pass through the default namespace. Any optional unencrypted data or clear network traffic must be explicitly requested by an authorized user with the right to run cuckoo, the AirVPN traffic split manager tool. AirVPN's traffic splitting is enabled and controlled by Bluetit and by means of run control directives. The system has been created in order to minimize any tedious or extensive configuration, even to the minimal point of telling Bluetit to enable traffic splitting with no other setting. In order to enable and control AirVPN's traffic splitting, the below new run control directives for /etc/airvpn/bluetit.rc have been introduced: allowtrafficsplitting: (on/off) enable or disable traffic splitting (unencrypted and out of the tunnel traffic) Default: off trafficsplitnamespace: (string) name of Linux network namespace dedicated to traffic splitting. Default: aircuckoo trafficsplitinterface: (string) name of the physical network interface to be used for traffic splitting. All the unencrypted and out of the tunnel data will pass through the specified network device/interface. In case this directive is not used and unspecified, Bluetit will automatically use the main network interface of the system and connected to the default gateway. Default: unspecified trafficsplitnamespaceinterface: (string) name of the virtual network interface to be associated to the Linux network namespace dedicated to traffic splitting. Default: ckveth0 trafficsplitipv4: (IPv4 address|auto) IPv4 address of the virtual network interface used for traffic splitting. In case it is set to 'auto', Bluetit will try to automatically assign an unused IPv4 address belonging to the system's host sub-network (/24) Default: auto trafficsplitipv6: (IPv6 address|auto) IPv6 address of the virtual network interface used for traffic splitting. In case it is set to 'auto', Bluetit will try to automatically assign an unused IPv6 address belonging to the system's host sub-network (/64) Default: auto trafficsplitfirewall: (on/off) enable or disable the firewall in Linux network namespace dedicated to traffic splitting. The firewall is set up with a minimal rule set for a very basic security model. Default: off AirVPN's traffic splitting is designed in order to minimize any further configuration from the system administrator. To actually enable traffic splitting, it is just needed to set "allowtrafficsplitting" directive to "on" and Bluetit will configure the traffic split namespace with the default options as explained above. When needed, the system administrator can finely tune the traffic splitting service by using the above directives. Power and limitations The adopted solution offers a remarkable security bonus in terms of isolation. For example, it gets rid of the dangerous DNS "leaks in" typical of cgroups based traffic splitting solutions. However, the dedicated namespace needs an exclusive IP address. If the system is behind a NAT (connected to a home router for example) this is not a problem, but if the system is not behind any NAT, i.e. it is assigned directly a public IP address, you will need another public IP address for the network namespace dedicated to traffic splitting. You will need to manually set the other public IP address on the trafficsplitipv4 or trafficsplitipv6 directive as the guessing abilities of Bluetit may work only within a private subnet. Please keep this limitation in mind especially if you want to run the Suite with per app traffic splitting on a dedicated or virtual server in some datacenter, as they are most of the times NOT behind any NAT. Introducing Cuckoo, the AirVPN traffic splitting manager tool Bluetit supports and implements a traffic splitting facility by using a dedicated network namespace. AirVPN Traffic splitting is implemented by using a separate and independent network namespace, directly communicating with the system’s default gateway through a virtual interface associated to a physical network interface available in the system. This ensures a true separation of traffic between tunneled and encrypted VPN data from the unencrypted and clear data to be channeled out of the VPN tunnel. The unencrypted traffic generated within the traffic splitting network namespace will never pass through the default (main) namespace - which is under the VPN control - including, and most importantly, DNS requests. To generate unencrypted and out of the tunnel traffic, any application software must be run inside the traffic split namespace by using the dedicated traffic split tool cuckoo which can be run by users belonging to the airvpn group only and it cannot be used by the superuser. The usage is documented in the manual as well as on the inline help. The traffic split namespace uses its own routing, network channels and DNS. It will not interfere or communicate in any way with the default namespace using its own encrypted tunnel. As for DNS, the traffic split namespace will use default system DNS settings. Programs started with cuckoo are regular Linux processes and, as such, can be managed (stopped, interrupted, paused, terminated and killed) by using the usual process control tools. The programs started by cuckoo are assigned to the user who started cuckoo. As a final note, in order to work properly, the following permissions must be granted to cuckoo and they are always checked at each run. Owner: root Group: airvpn Permissions: -rwsr-xr-x (owner can read, write, execute and setuid; group can read and execute, others can read and execute) Special note for snap packages users Snap is a controversial, locking-in package management system developed by Canonical and praised by Microsoft. It packages applications as snaps, which are self-contained units that include all necessary dependencies and run in a sandboxed environment in its default namespace. Therefore, "snap" applications will bypass the order by the system via Cuckoo to have an application running in one specific namespace created for reverse traffic splitting. As a result, snap applications will jettison the Suite's reverse traffic splitting feature. Currently, you must avoid snap packages of those applications whose traffic must flow outside the VPN tunnel. The issue is particularly relevant ever since Ubuntu migrated certain packages exclusively to Snap, such as Chromium and Firefox. At the moment it is still possible to eradicate snap from various distributions, including Ubuntu, quickly. Special note for firewalld users Please read here, it's very important: https://airvpn.org/forums/topic/70164-linux-network-lock-and-firewalld/ AirVPN Switch User Tool Airsu Running an application in a graphical environment requires a user having a local environment properly set, in particular variables and access to specific sockets or cookies. They are usually set at the moment of graphical login, while they may not be properly set in case a user logged in by using the system tool su. In this specific case the user will not probably be allowed to access the graphical environment, so any GUI application will not start. AirVPN’s airsu is used for this specific purpose and configures the user environment to the current X.Org (X11) or Wayland based manager, thus allowing access to GUI applications when run through cuckoo. Note on GUI software and Web Browsers The previous limitations on browsers have been completely resolved. Furthermore, complete compatibility with Wayland based environment has been implemented. Because of the specific Linux architecture and namespaces, some applications may need to specify the graphical environment in order to start and use the currently selected window manager on an X.Org (X11) or Wayland based habitat. Cuckoo can automatically do this by “injecting” predefined options to some preset applications, in particular those based on the chromium engines, most of them being web browsers. To see the list of predefined applications, please start cuckoo with --list-preset-apps option. When running an application with cuckoo, the user should make sure to actually start a new instance. This is usually granted by starting an application from the command line (such as running it with cuckoo). By starting an application from the desktop environment this may not happen. Download AirVPN Suite 2.0.0 Release Candidate 1 ARM 64 bit: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-aarch64-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-aarch64-2.0.0-RC-1.tar.gz.sha512 ARM 64 bit legacy: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-aarch64-legacy-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-aarch64-legacy-2.0.0-RC-1.tar.gz.sha512 ARM 32 bit: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-armv7l-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-armv7l-2.0.0-RC-1.tar.gz.sha512 ARM 32 bit legacy: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-armv7l-legacy-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-armv7l-legacy-2.0.0-RC-1.tar.gz.sha512 x86-64: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-x86_64-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-x86_64-2.0.0-RC-1.tar.gz.sha512 x86-64 legacy: https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-x86_64-legacy-2.0.0-RC-1.tar.gz https://eddie.website/repository/AirVPN-Suite/2.0-RC1/AirVPN-Suite-x86_64-legacy-2.0.0-RC-1.tar.gz.sha512 Changelogs Changelogs are available inside each package. Kind regards & Datalove AirVPN Staff
-
1 pointLast minute +3 years - hang the expense! - keep up the good work.
-
1 point
-
1 point
OpenVPN 3 fork – merge to upstream?
Flx reacted to OpenSourcerer for a post in a topic
Mmh, your sass was duly noted. If you pushed your code style onto the Linux kernel, it would've happened; what in god's name does that have to do with what Linus did or didn't say about the individual code style of a different project? The much more funny thing is how overly sensitive you react to the slightest smell of criticism… it's irritating. -
1 pointHello! In 2019 we pushed a commit with a major new feature for OpenVPN3 library but it was refused by the maintainer (Arne Schwabe) for stylistic reasons. In the opinion of some of us it's their (OpenVPN3 maintainers) style to be ugly, but OK it's a matter of personal tastes so the text format and spacing was changed accordingly and a new commit was ready. The new commit was again refused, this time because the source code included tags mentioning the source code author "ProMIND". We couldn't fully understand why the author should not be mentioned in the source code itself, moreover the tags were useful for another purpose, but fine, all tags were removed and a new commit was ready. The new commit was again refused, this time because the identity of the source code author ProMIND was not certified. In general we do not disclose the identity of our employees and collaborators, much less force them to certify it with any third party, and leave to them the choice to disclose real identity and certify it. The request was strange and we asked for some clarification. It came out, even from other OpenVPN community members, that the requirement was related to a specific contractual agreement mentioned here: https://github.com/OpenVPN/openvpn3/blob/master/CLA.rst At that point we did not like the situation: please note that a new problem was mentioned only after each new commit was proposed, while it would have been fair that all problems were mentioned at the same time, obviously, since the very beginning. And we did not like anymore to allow OpenVPN Inc. to re-license under any new license our or ProMIND's code, which is under GPLv3, according to the mentioned contributor's agreement, specifically part II, (e) clause: "(e) I understand that OpenVPN Inc. may relicense this project, this contribution, and any modification to it under any license. [...]". Therefore we did not waste additional time on the matter and we went on with our fork without further ado. At this very moment we have no merging/commit plans. On a lighter tone, this thread dated 2019 is funny in the last part: https://airvpn.org/forums/topic/43850-openvpn-3-development/ because one of the AirVPN community moderators defended OpenVPN style and Schwabe refusals, and wrote: "If you had contributed to the Linux kernel like that, Linus would tear you to tiny bits." Ironically, after that message was written, Linus Torvalds examined OpenVPN code and he was horrified. Kind regards