Skip to content

Conversation

@c-po
Copy link
Member

@c-po c-po commented Dec 2, 2025

Change summary

When migrating from VyOS 1.3 to 1.4, OpenVPN interfaces sharing the same certificate (chain) end up getting duplicated certificate entries, one per interface — instead of reusing a single cert if applicable.

This change makes the migration logic detect shared certificates and reuse a single CA and server certificate objects, preventing redundant certificate entries in the config.

Adds necessary embedded certificates to validate the migration logic. The CA used was generated using EasyRSA as described in our documentation: https://docs.vyos.io/en/1.3/configuration/interfaces/openvpn.html#generate-x-509-certificate-and-keys

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes)
  • Migration from an old Vyatta component to vyos-1x, please link to related PR inside obsoleted component
  • Other (please describe):

Related Task(s)

Related PR(s)

How to test / Smoketest result

image

Checklist:

  • I have read the CONTRIBUTING document
  • I have linked this PR to one or more Phabricator Task(s)
  • I have run the components SMOKETESTS if applicable
  • My commit headlines contain a valid Task id
  • My change requires a change to the documentation
  • I have updated the documentation accordingly

@github-actions
Copy link

github-actions bot commented Dec 2, 2025

👍
No issues in PR Title / Commit Title

@c-po c-po added bp/sagitta Create automatic backport for sagitta LTS version bp/circinus Create automatic backport for circinus labels Dec 2, 2025
c-po added 2 commits December 2, 2025 07:22
When migrating from VyOS 1.3 to 1.4, OpenVPN interfaces sharing the same
certificate (chain) end up getting duplicated certificate entries, one per
interface — instead of reusing a single cert if applicable.

This change makes the migration logic detect shared certificates and reuse a
single CA and server certificate objects, preventing redundant certificate
entries in the config.
This adds necessary embedded certificates to validate the migration logic added
in commit 63cc76f ("openvpn: T7738: avoid duplicate certs during 1.3 -> 1.4
migration").

The CA used was generated using EasyRSA as described in our documentation:
https://docs.vyos.io/en/1.3/configuration/interfaces/openvpn.html#generate-x-509-certificate-and-keys
@c-po c-po force-pushed the openvpn-t7738-migration branch from d14afcd to 97ff827 Compare December 2, 2025 06:22
@github-actions
Copy link

github-actions bot commented Dec 2, 2025

CI integration ❌ failed!

Details

CI logs

  • CLI Smoketests (no interfaces) 👍 passed
  • CLI Smoketests VPP 👍 passed
  • CLI Smoketests (interfaces only) 👍 passed
  • Config tests ❌ failed
  • Config tests VPP 👍 passed
  • RAID1 tests 👍 passed
  • TPM tests 👍 passed

Copy link
Contributor

@natali-rs1985 natali-rs1985 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

test_config_load doesn't like this changes

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bp/circinus Create automatic backport for circinus bp/sagitta Create automatic backport for sagitta LTS version current

Development

Successfully merging this pull request may close these issues.

2 participants