mirror of
https://github.com/vyos/vyos-documentation.git
synced 2025-10-26 08:41:46 +01:00
Merge pull request #324 from currite/from-wiki-CLI
configuration overview: add missing contents from old wiki.
This commit is contained in:
commit
7c9212f782
@ -15,18 +15,18 @@ Terminology
|
|||||||
|
|
||||||
A VyOS system has three major types of configurations:
|
A VyOS system has three major types of configurations:
|
||||||
|
|
||||||
* **Active** or **Running** configuration is the system configuration
|
* **Active** or **running configuration** is the system configuration
|
||||||
that is loaded and currently active (used by VyOS). Any change in
|
that is loaded and currently active (used by VyOS). Any change in
|
||||||
the configuration will have to be committed to belong to the
|
the configuration will have to be committed to belong to the
|
||||||
active/running configuration.
|
active/running configuration.
|
||||||
|
|
||||||
* **Working** - is the configuration which is currently being modified
|
* **Working configuration** is the one that is currently being modified
|
||||||
in configuration mode. Changes made to the working configuration do
|
in configuration mode. Changes made to the working configuration do
|
||||||
not go into effect until the changes are committed with the
|
not go into effect until the changes are committed with the
|
||||||
:cfgcmd:`commit` command. At which time the working configuration will
|
:cfgcmd:`commit` command. At which time the working configuration will
|
||||||
become the active or running configuration.
|
become the active or running configuration.
|
||||||
|
|
||||||
* **Saved** - is a configuration saved to a file using the
|
* **Saved configuration** is the one saved to a file using the
|
||||||
:cfgcmd:`save` command. It allows you to keep safe a configuration for
|
:cfgcmd:`save` command. It allows you to keep safe a configuration for
|
||||||
future uses. There can be multiple configuration files. The default or
|
future uses. There can be multiple configuration files. The default or
|
||||||
"boot" configuration is saved and loaded from the file
|
"boot" configuration is saved and loaded from the file
|
||||||
@ -295,9 +295,13 @@ entered.
|
|||||||
[edit]
|
[edit]
|
||||||
vyos@vyos# set interface ethernet eth0 address 192.0.2.100/24
|
vyos@vyos# set interface ethernet eth0 address 192.0.2.100/24
|
||||||
|
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
[edit interfaces ethernet eth0]
|
[edit interfaces ethernet eth0]
|
||||||
vyos@vyos# set address 203.0.113.6/24
|
vyos@vyos# set address 203.0.113.6/24
|
||||||
|
|
||||||
|
|
||||||
These two commands above are essentially the same, just executed from
|
These two commands above are essentially the same, just executed from
|
||||||
different levels in the hierarchy.
|
different levels in the hierarchy.
|
||||||
|
|
||||||
@ -369,6 +373,105 @@ different levels in the hierarchy.
|
|||||||
[edit]
|
[edit]
|
||||||
vyos@vyos# exit discard
|
vyos@vyos# exit discard
|
||||||
|
|
||||||
|
|
||||||
|
.. cfgcmd:: commit-confirm
|
||||||
|
|
||||||
|
Commit the current set of changes if ``confirm`` is also entered
|
||||||
|
within 10 minutes. Otherwise the system reboot into the previous
|
||||||
|
configuration.
|
||||||
|
|
||||||
|
|
||||||
|
What if you are doing something dangerous? Suppose you want to setup
|
||||||
|
a firewall, and you are not sure there are no mistakes that will lock
|
||||||
|
you out of your system. You can use confirmed commit. If you issue
|
||||||
|
the ``commit-confirm`` command, your changes will be commited, and if
|
||||||
|
you don't issue issue the ``confirm`` command in 10 minutes, your
|
||||||
|
system will reboot into previous config revision.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
vyos@router# set interfaces ethernet eth0 firewall local name FromWorld
|
||||||
|
vyos@router# commit-confirm
|
||||||
|
commit confirm will be automatically reboot in 10 minutes unless confirmed
|
||||||
|
Proceed? [confirm]y
|
||||||
|
[edit]
|
||||||
|
vyos@router# confirm
|
||||||
|
[edit]
|
||||||
|
|
||||||
|
|
||||||
|
.. note:: A reboot because you did not enter ``confirm`` will not
|
||||||
|
take you necessarily to the *saved configuration*, but to the
|
||||||
|
point before the unfortunate commit.
|
||||||
|
|
||||||
|
|
||||||
|
.. cfgcmd:: copy
|
||||||
|
|
||||||
|
Copy a configuration element.
|
||||||
|
|
||||||
|
You can copy and remove configuration subtrees. Suppose you set up a
|
||||||
|
firewall ruleset ``FromWorld`` with one rule that allows traffic from
|
||||||
|
specific subnet. Now you want to setup a similar rule, but for
|
||||||
|
different subnet. Change your edit level to
|
||||||
|
``firewall name FromWorld`` and use ``copy rule 10 to rule 20``, then
|
||||||
|
modify rule 20.
|
||||||
|
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
vyos@router# show firewall name FromWorld
|
||||||
|
default-action drop
|
||||||
|
rule 10 {
|
||||||
|
action accept
|
||||||
|
source {
|
||||||
|
address 203.0.113.0/24
|
||||||
|
}
|
||||||
|
}
|
||||||
|
[edit]
|
||||||
|
vyos@router# edit firewall name FromWorld
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
vyos@router# copy rule 10 to rule 20
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
vyos@router# set rule 20 source address 198.51.100.0/24
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
vyos@router# commit
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
|
||||||
|
|
||||||
|
.. cfgcmd:: rename
|
||||||
|
|
||||||
|
Rename a configuration element.
|
||||||
|
|
||||||
|
You can also rename config subtrees:
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
vyos@router# rename rule 10 to rule 5
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
vyos@router# commit
|
||||||
|
[edit firewall name FromWorld]
|
||||||
|
|
||||||
|
Note that ``show`` command respects your edit level and from this
|
||||||
|
level you can view the modified firewall ruleset with just ``show``
|
||||||
|
with no parameters.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
vyos@router# show
|
||||||
|
default-action drop
|
||||||
|
rule 5 {
|
||||||
|
action accept
|
||||||
|
source {
|
||||||
|
address 203.0.113.0/24
|
||||||
|
}
|
||||||
|
}
|
||||||
|
rule 20 {
|
||||||
|
action accept
|
||||||
|
source {
|
||||||
|
address 198.51.100.0/24
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
.. _run_opmode_from_config_mode:
|
.. _run_opmode_from_config_mode:
|
||||||
|
|
||||||
Access opmode from config mode
|
Access opmode from config mode
|
||||||
@ -451,12 +554,13 @@ any previous revisions if something goes wrong.
|
|||||||
9 2013-12-12 15:42:07 root by boot-config-loader
|
9 2013-12-12 15:42:07 root by boot-config-loader
|
||||||
10 2013-12-12 15:42:06 root by init
|
10 2013-12-12 15:42:06 root by init
|
||||||
|
|
||||||
Revisions can be compared with :cfgcmd:`compare N M` command, where N
|
The command :cfgcmd:`compare` allows you to compare different type of
|
||||||
and M are revision numbers. The output will describe how the
|
configurations. It also lets you compare different revisions through
|
||||||
configuration N is when compared to YM indicating with a plus sign
|
the :cfgcmd:`compare N M` command, where N and M are revision
|
||||||
(``+``) the additional parts N has when compared to M, and indicating
|
numbers. The output will describe how the configuration N is when
|
||||||
with a minus sign (``-``) the lacking parts N misses when compared to
|
compared to M indicating with a plus sign (``+``) the additional
|
||||||
Y.
|
parts N has when compared to M, and indicating with a minus sign
|
||||||
|
(``-``) the lacking parts N misses when compared to M.
|
||||||
|
|
||||||
.. code-block:: none
|
.. code-block:: none
|
||||||
|
|
||||||
@ -473,6 +577,26 @@ any previous revisions if something goes wrong.
|
|||||||
- address 192.0.2.4/24
|
- address 192.0.2.4/24
|
||||||
-}
|
-}
|
||||||
|
|
||||||
|
|
||||||
|
.. opcmd:: show system commit diff <number>
|
||||||
|
|
||||||
|
Show commit revision difference.
|
||||||
|
|
||||||
|
|
||||||
|
The command above also lets you see the difference between two commits.
|
||||||
|
By default the difference with the running config is shown.
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
vyos@router# run show system commit diff 4
|
||||||
|
[edit system]
|
||||||
|
+ipv6 {
|
||||||
|
+ disable-forwarding
|
||||||
|
+}
|
||||||
|
|
||||||
|
This means four commits ago we did ``set system ipv6 disable-forwarding``.
|
||||||
|
|
||||||
|
|
||||||
.. cfgcmd:: set system config-management commit-revisions <N>
|
.. cfgcmd:: set system config-management commit-revisions <N>
|
||||||
|
|
||||||
You can specify the number of revisions stored on disk. N can be in
|
You can specify the number of revisions stored on disk. N can be in
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user