No edit summary |
No edit summary |
||
Line 4: | Line 4: | ||
== Summary == | == Summary == | ||
pam_userdb was built with support for BerkeleyDB, but this project is no longer maintained, so it is replaced by GDBM. | pam_userdb was built with support for BerkeleyDB, but this project is no longer maintained as open source, so it is replaced by GDBM. | ||
== Owner == | == Owner == | ||
Line 15: | Line 15: | ||
== Current status == | == Current status == | ||
<!-- TODO: when ready change to ChangeReadyForWrangler --> | |||
[[Category:ChangePageIncomplete]] | [[Category:ChangePageIncomplete]] | ||
[[Category:SystemWideChange]] | [[Category:SystemWideChange]] | ||
Line 42: | Line 39: | ||
== Feedback == | == Feedback == | ||
<!-- TODO: add feedback from https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/HXK2RS7IBCRRYAQEYP2P66T6W4ONFBAZ/ --> | |||
<!-- Summarize the feedback from the community and address why you chose not to accept proposed alternatives. This section is optional for all change proposals but is strongly suggested. Incorporating feedback here as it is raised gives FESCo a clearer view of your proposal and leaves a good record for the future. If you get no feedback, that is useful to note in this section as well. For innovative or possibly controversial ideas, consider collecting feedback before you file the change proposal. --> | <!-- Summarize the feedback from the community and address why you chose not to accept proposed alternatives. This section is optional for all change proposals but is strongly suggested. Incorporating feedback here as it is raised gives FESCo a clearer view of your proposal and leaves a good record for the future. If you get no feedback, that is useful to note in this section as well. For innovative or possibly controversial ideas, consider collecting feedback before you file the change proposal. --> | ||
== Benefit to Fedora == | == Benefit to Fedora == | ||
* This change uses a database that is Fedora license compatible. | * This change uses a database that is Fedora license compatible. | ||
* This changes uses an upstream maintained database version, with new features and bug fixing. pam_userdb controls user authentication, and a bug in the database could lead to a security vulnerability. | |||
== Scope == | == Scope == | ||
Line 57: | Line 55: | ||
* Release engineering: https://pagure.io/releng/issue/11649 | * Release engineering: https://pagure.io/releng/issue/11649 | ||
<!-- TODO: write documentation and provide link(?) --> | |||
* Policies and guidelines: N/A (not needed for this Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | * Policies and guidelines: N/A (not needed for this Change) <!-- REQUIRED FOR SYSTEM WIDE CHANGES --> | ||
<!-- Do the packaging guidelines or other documents need to be updated for this feature? If so, does it need to happen before or after the implementation is done? If a FPC ticket exists, add a link here. Please submit a pull request with the proposed changes before submitting your Change proposal. --> | <!-- Do the packaging guidelines or other documents need to be updated for this feature? If so, does it need to happen before or after the implementation is done? If a FPC ticket exists, add a link here. Please submit a pull request with the proposed changes before submitting your Change proposal. --> | ||
Line 65: | Line 64: | ||
== Upgrade/compatibility impact == | == Upgrade/compatibility impact == | ||
=== Upgrade === | === Upgrade === | ||
* If the pam_userdb module is used by the system, then the user/sysadmin will have to run the conversion tool. This can't be done automatically because the database location is configurable, and the conversion tool will need manual intervention. | * If the pam_userdb module is used by the system, then the user/sysadmin will have to run the conversion tool. This can't be done automatically because the database location is configurable, and the conversion tool will need manual intervention. | ||
=== Compatibility === | === Compatibility === | ||
* pam_userdb module is mainly used in vsftpd environments. If this module is used by the system and the database isn't converted, then the user won't be able to authenticate in vsftpd environments. The user would still be able to authenticate using other methods and run the conversion tool. | * pam_userdb module is mainly used in vsftpd environments. If this module is used by the system and the database isn't converted, then the user won't be able to authenticate in vsftpd environments. The user would still be able to authenticate using other methods (i.e. su, ssh) and run the conversion tool. | ||
== How To Test == | == How To Test == | ||
* Run `db_converter` to convert the database. Example | |||
`db_converter --src /etc/vsftpd/login.db --dest /etc/vsftpd/login.gdbm` | |||
* vsftpd login | |||
* Check that the user is authenticated | |||
== User Experience == | == User Experience == | ||
Users won't experience any change. | |||
== Dependencies == | == Dependencies == | ||
vsftpd depends on this change, but nothing needs to be done in this package. | |||
== Contingency Plan == | == Contingency Plan == | ||
* Contingency mechanism: Postpone to the next release. | |||
* Contingency deadline: Beta freeze. | |||
* Contingency mechanism: | * Blocks release? No. | ||
* Contingency deadline: | |||
* Blocks release? | |||
== Documentation == | == Documentation == | ||
<!-- TODO: add link to documentation --> | |||
<!-- Is there upstream documentation on this change, or notes you have written yourself? Link to that material here so other interested developers can get involved. --> | <!-- Is there upstream documentation on this change, or notes you have written yourself? Link to that material here so other interested developers can get involved. --> | ||
Line 128: | Line 100: | ||
== Release Notes == | == Release Notes == | ||
<!-- | pam_userdb switches database provider to GDM. <!-- TODO: add note to the conversion documentation --> | ||
--> |
Revision as of 08:30, 1 September 2023
Switch pam_userdb from BerkeleyDB to GDBM
Summary
pam_userdb was built with support for BerkeleyDB, but this project is no longer maintained as open source, so it is replaced by GDBM.
Owner
- Name: Iker Pedrosa Filip Janus
- Email: ipedrosa@redhat.com fjanus@redhat.com
Current status
- Targeted release: Fedora Linux 40
- Last updated: 2023-09-01
- [<will be assigned by the Wrangler> devel thread]
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
Currently, the Fedora provided BerkeleyDB versions is 5.x, which has been unmaintained upstream for several years. BerkeleyDB v6.x is license incompatible, so moving to that version is not an option.
The proposal is to switch to GDBM, which has upstream support and whose license is compatible with Fedora.
Feedback
Benefit to Fedora
- This change uses a database that is Fedora license compatible.
- This changes uses an upstream maintained database version, with new features and bug fixing. pam_userdb controls user authentication, and a bug in the database could lead to a security vulnerability.
Scope
- Proposal owners:
- libdb provides a program to port a BerkeleyDB database to GDBM.
- Change PAM database build option to GDBM.
- Other developers: N/A
- Release engineering: https://pagure.io/releng/issue/11649
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A
- Alignment with Community Initiatives: N/A
Upgrade/compatibility impact
Upgrade
- If the pam_userdb module is used by the system, then the user/sysadmin will have to run the conversion tool. This can't be done automatically because the database location is configurable, and the conversion tool will need manual intervention.
Compatibility
- pam_userdb module is mainly used in vsftpd environments. If this module is used by the system and the database isn't converted, then the user won't be able to authenticate in vsftpd environments. The user would still be able to authenticate using other methods (i.e. su, ssh) and run the conversion tool.
How To Test
- Run
db_converter
to convert the database. Example
db_converter --src /etc/vsftpd/login.db --dest /etc/vsftpd/login.gdbm
- vsftpd login
- Check that the user is authenticated
User Experience
Users won't experience any change.
Dependencies
vsftpd depends on this change, but nothing needs to be done in this package.
Contingency Plan
- Contingency mechanism: Postpone to the next release.
- Contingency deadline: Beta freeze.
- Blocks release? No.
Documentation
N/A (not a System Wide Change)
Release Notes
pam_userdb switches database provider to GDM.