From ff8f11a1b757452eaaf35cf1fcb9c0509a44f621 Mon Sep 17 00:00:00 2001 From: srividya0208 <68350089+srividya0208@users.noreply.github.com> Date: Mon, 29 Sep 2025 17:35:48 +0530 Subject: [PATCH] intallation: made modifications to install & update page (#1688) --- docs/_static/images/vyosnew-downloads.png | Bin 0 -> 64419 bytes docs/installation/image.rst | 51 ++-- docs/installation/install.rst | 271 +++++----------------- 3 files changed, 82 insertions(+), 240 deletions(-) create mode 100644 docs/_static/images/vyosnew-downloads.png diff --git a/docs/_static/images/vyosnew-downloads.png b/docs/_static/images/vyosnew-downloads.png new file mode 100644 index 0000000000000000000000000000000000000000..294a458904e693cda3f67c549f45fdb49fc9109f GIT binary patch literal 64419 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Ν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 - sub rsa4096 2015-08-12 [E] - -.. _gpg-verification: - -GPG verification -^^^^^^^^^^^^^^^^ - -With the public key imported, the signature for the desired image needs -to be downloaded. - -.. note:: The signature can be downloaded by appending `.asc` to the URL of the - downloaded VyOS image. That small *.asc* file is the signature for the - associated image. - -Finally, verify the authenticity of the downloaded image: - -.. code-block:: none - - $ gpg2 --verify vyos-1.2.1-amd64.iso.asc vyos-1.2.1-amd64.iso - gpg: Signature made So 14 Apr 12:58:07 2019 CEST - gpg: using RSA key FD220285A0FE6D7E - gpg: Good signature from "VyOS Maintainers (VyOS Release) " [unknown] - Primary key fingerprint: 0694 A923 0F51 39BF 834B A458 FD22 0285 A0FE 6D7E +verified. Minisign is used for verification. .. _minisign-verification: Minisign verification ^^^^^^^^^^^^^^^^^^^^^ -Currently we are using GPG for release signing (pretty much like everyone else). - -Popularity of GPG for release signing comes from the fact that many people -already had it installed for email encryption/signing. Inside a VyOS image, -signature checking is the only reason to have it installed. However, it still -comes with all the features no one needs, such as support for multiple outdated -cipher suits and ability to embed a photo in the key file. More importantly, -web of trust, the basic premise of PGP, is never used in release signing -context. Once you have a knowingly authentic image, authenticity of upgrades is -checked using a key that comes in the image, and to get their first image people -never rely on keyservers either. - -Another point is that we are using RSA now, which requires absurdly large keys -to be secure. +Currently we are using Minisign for release signing which is a simple tool to +sign files and verify signatures. In 2015, OpenBSD introduced signify. An alternative implementation of the same protocol is minisign, which is also available for Windows and macOS, and in most -GNU/Linux distros it's in the repositories now. - -Its installed size (complete with libsodium) is less than that of GPG binary -alone (not including libgcrypt and some other libs, which I think we only use -for GPG). Since it uses elliptic curves, it gets away with much smaller keys, -and it doesn't include as much metadata to begin with. - -Another issue of GPG is that it creates a /root/.gnupg directory just for -release checking. The dir is small so the fact that it's never used again is -an aesthetic problem, but we've had that process fail in the past. But, small -key size of the Ed25519 algorithm allows passing public keys in command line -arguments, so verification process can be completely stateless: +GNU/Linux distros it's in the repositories now. It is portable, lightweight, and +uses the highly secure Ed25519 public-key signature system. :vytask:`T2108` switched the validation system to prefer minisign over GPG keys. @@ -262,6 +123,12 @@ During an image upgrade VyOS performas the following command: Signature and comment signature verified Trusted comment: timestamp:1629997936 file:vyos-1.3.0-rc6-amd64.iso +.. note:: Starting with 1.4.3, VyOS uses Minisign exclusively. This should not + be a problem for anyone because Minisign signature verification has already + been present in all releases for years. But if you see an unexpected verification + error, you can solve that by updating your system to 1.4.2 first. + Removed support for GnuPG signatures(:vytask:`T7301`). + .. _live_installation: Live installation @@ -345,13 +212,6 @@ Every version is contained in its own squashfs image that is mounted in a union filesystem together with a directory for mutable data such as configurations, keys, or custom scripts. -.. note:: Older versions (prior to VyOS 1.1) used to support non-image - installation (``install system`` command). Support for this has been removed - from VyOS 1.2 and newer releases. Older releases can still be upgraded via - the general ``add system image `` upgrade command (consult - :ref:`image-mgmt` for further information). - - In order to proceed with a permanent installation: 1. Log into the VyOS live system (use the default credentials: vyos, @@ -360,55 +220,39 @@ In order to proceed with a permanent installation: 2. Run the ``install image`` command and follow the wizard: .. code-block:: none - + vyos@vyos:~$ install image - Welcome to the VyOS install program. This script - will walk you through the process of installing the - VyOS image to a local hard drive. - Would you like to continue? (Yes/No) [Yes]: Yes - Probing drives: OK - Looking for pre-existing RAID groups...none found. - The VyOS image will require a minimum 2000MB root. - Would you like me to try to partition a drive automatically - or would you rather partition it manually with parted? If - you have already setup your partitions, you may skip this step - - Partition (Auto/Parted/Skip) [Auto]: - - I found the following drives on your system: - sda 4294MB - - Install the image on? [sda]: - - This will destroy all data on /dev/sda. - Continue? (Yes/No) [No]: Yes - - How big of a root partition should I create? (2000MB - 4294MB) [4294]MB: - - Creating filesystem on /dev/sda1: OK - Done! - Mounting /dev/sda1... - What would you like to name this image? [1.2.0-rolling+201809210337]: - OK. This image will be named: 1.2.0-rolling+201809210337 - Copying squashfs image... - Copying kernel and initrd images... - Done! - I found the following configuration files: - /opt/vyatta/etc/config.boot.default - Which one should I copy to sda? [/opt/vyatta/etc/config.boot.default]: - - Copying /opt/vyatta/etc/config.boot.default to sda. - Enter password for administrator account - Enter password for user 'vyos': - Retype password for user 'vyos': - I need to install the GRUB boot loader. - I found the following drives on your system: - sda 4294MB - - Which drive should GRUB modify the boot partition on? [sda]: - - Setting up grub: OK - Done! + Welcome to VyOS installation! + This command will install VyOS to your permanent storage. + Would you like to continue? [y/N] y + What would you like to name this image? (Default: 2025.09.17-0018-rolling) + Please enter a password for the "vyos" user: + Please confirm password for the "vyos" user: + What console should be used by default? (K: KVM, S: Serial)? (Default: S) + Probing disks + 1 disk(s) found + The following disks were found: + Drive: /dev/vda (10.0 GB) + Which one should be used for installation? (Default: /dev/vda) + Installation will delete all data on the drive. Continue? [y/N] y + Searching for data from previous installations + No previous installation found + Would you like to use all the free space on the drive? [Y/n] Y + Creating partition table... + The following config files are available for boot: + 1: /opt/vyatta/etc/config/config.boot + 2: /opt/vyatta/etc/config.boot.default + Which file would you like as boot config? (Default: 1) + Creating temporary directories + Mounting new partitions + Creating a configuration file + Copying system image files + Installing GRUB configuration files + Installing GRUB to the drive + Cleaning up + Unmounting target filesystems + Removing temporary files + The image installed successfully; please reboot now. 3. After the installation is completed, remove the live USB stick or @@ -607,5 +451,6 @@ Installation can then continue as outlined above. .. _configuration: https://wiki.syslinux.org/wiki/index.php?title=Config .. _default: https://wiki.syslinux.org/wiki/index.php?title=PXELINUX#Configuration .. _`Python's SimpleHTTPServer`: https://docs.python.org/2/library/simplehttpserver.html +.. _article: https://customers.support.vyos.com/servicedesk/customer/portal/1/article/159055913 .. start_vyoslinter