diff options
| m--------- | docs/_include/vyos-1x | 0 | ||||
| -rw-r--r-- | docs/_static/images/wireguard_qrcode.jpg | bin | 0 -> 133939 bytes | |||
| -rw-r--r-- | docs/changelog/1.3.rst | 41 | ||||
| -rw-r--r-- | docs/changelog/1.4.rst | 73 | ||||
| -rw-r--r-- | docs/configexamples/wan-load-balancing.rst | 4 | ||||
| -rw-r--r-- | docs/configuration/interfaces/wireguard.rst | 160 | ||||
| -rw-r--r-- | docs/configuration/protocols/isis.rst | 10 | ||||
| -rw-r--r-- | docs/configuration/service/console-server.rst | 4 | 
8 files changed, 227 insertions, 65 deletions
| diff --git a/docs/_include/vyos-1x b/docs/_include/vyos-1x -Subproject bfc8b264aae5b48247c28fc4d43d762f090c20d +Subproject b6301bfd6a6cb084671fd24970a4a06b10a89d9 diff --git a/docs/_static/images/wireguard_qrcode.jpg b/docs/_static/images/wireguard_qrcode.jpgBinary files differ new file mode 100644 index 00000000..0a9a98c0 --- /dev/null +++ b/docs/_static/images/wireguard_qrcode.jpg diff --git a/docs/changelog/1.3.rst b/docs/changelog/1.3.rst index 2bbca922..75973009 100644 --- a/docs/changelog/1.3.rst +++ b/docs/changelog/1.3.rst @@ -8,6 +8,45 @@     _ext/releasenotes.py +2021-04-25 +========== + +* :vytask:`T3468` (bug): Tunnel interfaces aren't suggested as being available for bridging (regression) +* :vytask:`T1802` (feature): Wireguard QR code in cli for mobile devices + + +2021-04-23 +========== + +* :vytask:`T3395` (bug): WAN load-balancing fails with nexthop dhcp +* :vytask:`T3290` (bug): Disabling GRE conntrack module fails + + +2021-04-18 +========== + +* :vytask:`T3481` (default): Exclude tag node values from key mangling +* :vytask:`T3475` (bug): XML dictionary cache unable to process syntaxVersion elements + + +2021-04-15 +========== + +* :vytask:`T3386` (bug): PPPoE-server don't start with local authentication + + +2021-04-14 +========== + +* :vytask:`T3055` (bug): op-mode incorrect naming fo ipsec policy-based tunnels  + + +2021-04-12 +========== + +* :vytask:`T3454` (enhancment): dhclient reject option + +  2021-04-08  ========== @@ -224,7 +263,7 @@  2021-02-16  ========== -* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.111 / 5.10.29 +* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.114 / 5.10.32  2021-02-14 diff --git a/docs/changelog/1.4.rst b/docs/changelog/1.4.rst index e8e21c86..0d0bf654 100644 --- a/docs/changelog/1.4.rst +++ b/docs/changelog/1.4.rst @@ -8,6 +8,77 @@     _ext/releasenotes.py +2021-04-25 +========== + +* :vytask:`T3490` (bug): priority inversion on PBR "policy route" create, breaks default route from dhcp (live iso) +* :vytask:`T3468` (bug): Tunnel interfaces aren't suggested as being available for bridging (regression) +* :vytask:`T3497` (bug): Prefix list with rule containing only action is not detected as error during parse +* :vytask:`T3492` (bug): BGP Configuration Migration failed (badly!) from rolling 202102240218 to rolling 202104221210 +* :vytask:`T1802` (feature): Wireguard QR code in cli for mobile devices + + +2021-04-24 +========== + +* :vytask:`T3472` (bug): commit-confirm script not found +* :vytask:`T3439` (bug): Commit-archive location not working for scp + + +2021-04-23 +========== + +* :vytask:`T3395` (bug): WAN load-balancing fails with nexthop dhcp +* :vytask:`T3290` (bug): Disabling GRE conntrack module fails + + +2021-04-20 +========== + +* :vytask:`T3488` (bug): Specifying an invalid "interface address" like dhcph leads to commit error + + +2021-04-18 +========== + +* :vytask:`T3481` (default): Exclude tag node values from key mangling +* :vytask:`T3475` (bug): XML dictionary cache unable to process syntaxVersion elements + + +2021-04-17 +========== + +* :vytask:`T3470` (bug): as-override isn't applied to frr + + +2021-04-15 +========== + +* :vytask:`T3386` (bug): PPPoE-server don't start with local authentication +* :vytask:`T3190` (feature): Unable to subtract value from local-preference in route-map + + +2021-04-14 +========== + +* :vytask:`T3398` (bug): Can't commit +* :vytask:`T3055` (bug): op-mode incorrect naming fo ipsec policy-based tunnels  + + +2021-04-13 +========== + +* :vytask:`T3436` (feature): Refactoring ospf op-mode for support vrf +* :vytask:`T3434` (feature): Refactoring bgp op-mode for support vrf + + +2021-04-12 +========== + +* :vytask:`T3454` (enhancment): dhclient reject option +* :vytask:`T3328` (bug): Bgp not possible to delete bgp route-map  + +  2021-04-11  ========== @@ -267,7 +338,7 @@  ==========  * :vytask:`T3313` (bug): ospfv3 interface missing options -* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.111 / 5.10.29 +* :vytask:`T3318` (feature): Update Linux Kernel to v5.4.114 / 5.10.32  2021-02-15 diff --git a/docs/configexamples/wan-load-balancing.rst b/docs/configexamples/wan-load-balancing.rst index 07974166..f26f3ce6 100644 --- a/docs/configexamples/wan-load-balancing.rst +++ b/docs/configexamples/wan-load-balancing.rst @@ -19,7 +19,7 @@ The setup used in this example is shown in the following diagram:  Overview  ^^^^^^^^ - * All traffic coming in trough eth2 is balanced between eth0 and eth1 + * All traffic coming in through eth2 is balanced between eth0 and eth1     on the router.   * Pings will be sent to four targets for health testing (33.44.55.66,     44.55.66.77, 55.66.77.88 and 66.77.88.99). @@ -171,4 +171,4 @@ eth+ is used as an alias that refers to all ethernet interfaces:     set load-balancing wan rule 5 inbound-interface eth+     set load-balancing wan rule 5 destination address 10.0.0.0/8 -.. start_vyoslinter
\ No newline at end of file +.. start_vyoslinter diff --git a/docs/configuration/interfaces/wireguard.rst b/docs/configuration/interfaces/wireguard.rst index 0ceb0aa2..ddfbe620 100644 --- a/docs/configuration/interfaces/wireguard.rst +++ b/docs/configuration/interfaces/wireguard.rst @@ -1,5 +1,7 @@  .. _wireguard: +.. include:: /_include/need_improvement.txt +  #########  WireGuard  ######### @@ -8,15 +10,16 @@ WireGuard is an extremely simple yet fast and modern VPN that utilizes  state-of-the-art cryptography. See https://www.wireguard.com for more  information. +*************  Configuration -============= +*************  WireGuard requires the generation of a keypair, which includes a private  key to decrypt incoming traffic, and a public key for peer(s) to encrypt  traffic. -Generate keypair ----------------- +Generate Keypair +================  .. opcmd:: generate wireguard default-keypair @@ -35,23 +38,25 @@ Generate keypair       hW17UxY7zeydJNPIyo3UtGnBHkzTK/NeBOrDSIU9Tx0= -Generate named keypair ----------------------- +Generate Named Keypair +======================  Named keypairs can be used on a interface basis when configured. If  multiple WireGuard interfaces are being configured, each can have their  own keypairs. -The commands below generates 2 keypairs unrelated to each other. +.. opcmd:: generate wireguard named-keypairs <name> -.. code-block:: none +  The commands below generates 2 keypairs unrelated to each other. -  vyos@vyos:~$ generate wireguard named-keypairs KP01 -  vyos@vyos:~$ generate wireguard named-keypairs KP02 +  .. code-block:: none + +    vyos@vyos:~$ generate wireguard named-keypairs KP01 +    vyos@vyos:~$ generate wireguard named-keypairs KP02  Interface configuration ------------------------ +=======================  The next step is to configure your local side as well as the policy  based trusted destination addresses. If you only initiate a connection, @@ -88,17 +93,17 @@ or allows the traffic.     WireGuard peers. This a a design decission. For more information please     check the `WireGuard mailing list`_. +.. cfgcmd:: set interfaces wireguard <interface> private-key <name> -To use a named key on an interface, the option private-key needs to be -set. +  To use a named key on an interface, the option private-key needs to be +  set. -.. code-block:: none +  .. code-block:: none -  set interfaces wireguard wg01 private-key KP01 -  set interfaces wireguard wg02 private-key KP02 +    set interfaces wireguard wg01 private-key KP01 -The command ``run show wireguard keypairs pubkey KP01`` will then show -the public key, which needs to be shared with the peer. +  The command :opcmd:`show wireguard keypairs pubkey KP01` will then show the +  public key, which needs to be shared with the peer.  **remote side** @@ -169,7 +174,7 @@ the peers. This allows the peers to interact with one another.          }          peer iPhone {              allowed-ips 10.172.24.20/32 -            allowed-ips 2001:DB8:470:22::30/128 +            allowed-ips 2001:DB8:470:22::20/128              persistent-keepalive 15              pubkey BknHcLFo8nOo8Dwq2CjaC/TedchKQ0ebxC7GYn7Al00=          } @@ -210,56 +215,103 @@ to the server go over the connection.      PersistentKeepalive = 25 -Operational commands -==================== +******************** +Operational Commands +******************** -**Show interface status** +Status +====== -.. code-block:: none +.. opcmd:: show interfaces wireguard + +  Get a list of all wireguard interfaces + +  .. code-block:: none -  vyos@wg01# run show interfaces wireguard wg01 -  interface: wg1 -      description: VPN-to-wg01 -      address: 10.2.0.1/24 -      public key: RIbtUTCfgzNjnLNPQ/asldkfjhaERDFl2H/xUfbyjc= +    Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down +    Interface        IP Address                        S/L  Description +    ---------        ----------                        ---  ----------- +    wg0              10.0.0.1/24                       u/u + + +.. opcmd:: show interfaces wireguard <interface> + +  Show general information about specific WireGuard interface + +  .. code-block:: none + +    vyos@vyos:~$ show interfaces wireguard wg01 +    interface: wg0 +      address: 10.0.0.1/24 +      public key: h1HkYlSuHdJN6Qv4Hz4bBzjGg5WUty+U1L7DJsZy1iE=        private key: (hidden) -      listening port: 53665 -      peer: to-wg02 -          public key: u41jO3OF73Gq1WARMMFG7tOfk7+r8o8AzPxJ1FZRhzk= -          latest handshake: 0:01:20 -          status: active -          endpoint: 192.168.0.124:12345 -          allowed ips: 10.2.0.0/24 -          transfer: 42 GB received, 487 MB sent -          persistent keepalive: every 15 seconds -      RX: -              bytes    packets    errors    dropped    overrun    mcast -      45252407916   31192260         0     244493          0        0 -      TX: -          bytes    packets    errors    dropped    carrier    collisions -      511649780    5129601     24465          0          0             0 - -**Show public key of the default key** +      listening port: 41751 -.. code-block:: none +        RX:  bytes  packets  errors  dropped  overrun       mcast +                 0        0       0        0        0           0 +        TX:  bytes  packets  errors  dropped  carrier  collisions +                 0        0       0        0        0           0 -  vyos@wg01# run show wireguard keypair pubkey default -  FAXCPb6EbTlSH5200J5zTopt9AYXneBthAySPBLbZwM= +Encryption Keys +=============== -**Show public key of a named key** +.. opcmd:: show wireguard keypair pubkey <name> -.. code-block:: none +  Show public key portion for specified key. This can be either the ``default`` +  key, or any other named key-pair. -  vyos@wg01# run show wireguard keypair pubkey KP01 -  HUtsu198toEnm1poGoRTyqkUKfKUdyh54f45dtcahDM= +  The ``default`` keypair +  .. code-block:: none -**Delete wireguard keypairs** +    vyos@vyos:~$ show wireguard keypair pubkey default +    FAXCPb6EbTlSH5200J5zTopt9AYXneBthAySPBLbZwM= -.. code-block:: none +  Name keypair ``KP01`` + +  .. code-block:: none + +    vyos@vyos:~$ show wireguard keypair pubkey KP01 +    HUtsu198toEnm1poGoRTyqkUKfKUdyh54f45dtcahDM= + +.. opcmd:: delete wireguard keypair pubkey <name> + +  Delete a keypair, this can be either the ``default`` key, or any other +  named key-pair. + +  .. code-block:: none + +    vyos@vyos:~$ delete wireguard keypair default + + +Mobile "RoadWarrior" clients +============================ + +Some users tend to connect their mobile devices using WireGuard to their VyOS +router. To ease deployment one can generate a "per mobile" configuration from +the VyOS CLI. + +.. warning:: From a security perspective it is not recommended to let a third +  party create the private key for a secured connection. You should create the +  private portion on your own and only hand out the public key. Please keep this +  in mind when using this convenience feature. + +.. opcmd:: generate wireguard client-config <name> interface <interface> server <ip|fqdn> address <client-ip> + +  Using this command you will create a new client configuration which can +  connect to ``interface`` on this router. The public key from the specified +  interface is automatically extracted and embedded into the configuration. + +  The command also generates a configuration snipped which can be copy/pasted +  into the VyOS CLI if needed. The supplied ``<name>`` on the CLI will become +  the peer name in the snippet. -  vyos@wg01$ delete wireguard keypair default +  In addition you will specifiy the IP address or FQDN for the client where it +  will connect to. The address parameter can be used up to two times and is used +  to assign the client its specific IPv4 (/32) or IPv6 (/128) address. +  .. figure:: /_static/images/wireguard_qrcode.jpg +     :alt: WireGuard Client QR code  .. stop_vyoslinter diff --git a/docs/configuration/protocols/isis.rst b/docs/configuration/protocols/isis.rst index a38db6f2..416a42c3 100644 --- a/docs/configuration/protocols/isis.rst +++ b/docs/configuration/protocols/isis.rst @@ -280,9 +280,9 @@ interfaces.    set policy route-map EXPORT-ISIS rule 10 action 'permit'    set policy route-map EXPORT-ISIS rule 10 match ip address prefix-list 'EXPORT-ISIS' -  set protocols isis FOO interface eth1 -  set protocols isis FOO net '49.0001.1921.6800.1002.00' -  set protocols isis FOO redistribute ipv4 connected level-2 route-map 'EXPORT-ISIS' +  set protocols isis interface eth1 +  set protocols isis net '49.0001.1921.6800.1002.00' +  set protocols isis redistribute ipv4 connected level-2 route-map 'EXPORT-ISIS'  **Node 2:** @@ -290,8 +290,8 @@ interfaces.    set interfaces ethernet eth1 address '192.0.2.2/24' -  set protocols isis FOO interface eth1 -  set protocols isis FOO net '49.0001.1921.6800.2002.00' +  set protocols isis interface eth1 +  set protocols isis net '49.0001.1921.6800.2002.00'  Show ip routes on Node2: diff --git a/docs/configuration/service/console-server.rst b/docs/configuration/service/console-server.rst index a509723e..dd2f5032 100644 --- a/docs/configuration/service/console-server.rst +++ b/docs/configuration/service/console-server.rst @@ -89,13 +89,13 @@ Operation       usb0b2.4p1.0               up   vyos@localhost -.. opcmd:: connect console-server <device> +.. opcmd:: connect console <device>    Locally connect to serial port identified by `<device>`.    .. code-block:: none -    vyos@vyos-r1:~$ connect console-server usb0b2.4p1.0 +    vyos@vyos-r1:~$ connect console usb0b2.4p1.0      [Enter `^Ec?' for help]      [-- MOTD -- VyOS Console Server] | 
