Bug 2006063

Summary: RFE: Support running without cracklib-dicts installed
Product: [Fedora] Fedora Reporter: Jonathan Lebon <jlebon>
Component: libpwqualityAssignee: Paul Wouters <paul.wouters>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 37CC: awilliam, crypto-team, dbelyavs, dustymabe, paul.wouters, tm
Target Milestone: ---Keywords: FutureFeature, Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libpwquality-1.4.5-1.fc38 libpwquality-1.4.5-1.fc37 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2022-12-23 18:45:03 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jonathan Lebon 2021-09-20 19:13:40 UTC
Description of problem:

Background for this in https://bugzilla.redhat.com/show_bug.cgi?id=1992607.

Before f35, libpwquality didn't require cracklib-dicts. This was changed in f35 to conditionally requiring it if `passwd` or `cryptsetup` is installed.

It would be nice if this could be loosened to go back to the f34 semantics of not requiring cracklib-dicts at all, or at least making it a weak dependency only.

In Fedora CoreOS at least, we focus on automation and minimalism. And while we do ship passwd and cryptsetup, in general we don't expect users to create passwords at the prompt:
- for `passwd`, we strongly encourage SSH, but even if not, password setting is done upfront via Butane and not interactively: https://docs.fedoraproject.org/en-US/fedora-coreos/authentication/#_using_password_authentication
- for `cryptsetup`, we strongly encourage Clevis for automated unlocking via TPM2 or a Tang server: https://docs.fedoraproject.org/en-US/fedora-coreos/storage/#_encrypted_storage_luks

Version-Release number of selected component (if applicable):

libpwquality-1.4.4-6.fc35.x86_64

How reproducible:

100%

Steps to Reproduce:
1. Install libpwquality while having passwd or cryptsetup installed

or

1. Do an rpm-ostree compose which pulls in libpwquality

Actual results:

cracklib-dicts gets pulled in

Expected results:

cracklib-dicts doesn't get pulled in

Comment 1 Jonathan Lebon 2021-09-20 19:18:21 UTC
As mentioned in https://bugzilla.redhat.com/show_bug.cgi?id=1992607#c11, rather than trying to extricate the libpwquality dep from pam and cryptsetup, it'd be nice to keep it around still and to at least check the things that it can in the absence of cracklib-dicts.

Comment 2 Dmitry Belyavskiy 2021-09-21 11:46:55 UTC
Do I correctly understand that libpwquality behavior should be changed to correctly process the lack of dicts?

(See https://bugzilla.redhat.com/show_bug.cgi?id=1992607 and https://bugzilla.redhat.com/show_bug.cgi?id=1992607#c9 for more details).

Comment 3 Jonathan Lebon 2021-09-24 20:11:12 UTC
(In reply to Dmitry Belyavskiy from comment #2)
> Do I correctly understand that libpwquality behavior should be changed to
> correctly process the lack of dicts?
> 
> (See https://bugzilla.redhat.com/show_bug.cgi?id=1992607 and
> https://bugzilla.redhat.com/show_bug.cgi?id=1992607#c9 for more details).

Yes, that's what I'd like to suggest. In FCOS, we actively disable dictcheck: https://github.com/coreos/fedora-coreos-config/blob/testing-devel/overlay.d/05core/etc/security/pwquality.conf.d/20-disable-dict.conf so cracklib-dicts already isn't queried, but ideally libpwquality would stop hard requiring cracklib-dicts and detect its absence dynamically without requiring upfront configuration. That way we can drop that dropin, as well as stop shipping cracklib-dicts.

Comment 4 Dmitry Belyavskiy 2021-09-29 14:37:52 UTC
Many thanks! If so, I think it's a future feature.

Comment 5 Ben Cotton 2022-11-29 17:04:52 UTC
This message is a reminder that Fedora Linux 35 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 35 on 2022-12-13.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '35'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 35 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 6 Jonathan Lebon 2022-11-30 14:30:52 UTC
This is still relevant and would be nice to tackle.

Comment 7 Fedora Update System 2022-12-23 18:43:04 UTC
FEDORA-2022-8595ad93db has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2022-8595ad93db

Comment 8 Fedora Update System 2022-12-23 18:45:03 UTC
FEDORA-2022-8595ad93db has been pushed to the Fedora 38 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 9 Fedora Update System 2022-12-23 18:59:39 UTC
FEDORA-2022-edda4c3b97 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2022-edda4c3b97

Comment 10 Fedora Update System 2022-12-24 02:09:20 UTC
FEDORA-2022-edda4c3b97 has been pushed to the Fedora 37 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2022-edda4c3b97`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2022-edda4c3b97

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 11 Fedora Update System 2023-01-05 01:16:45 UTC
FEDORA-2022-edda4c3b97 has been pushed to the Fedora 37 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 12 Adam Williamson 2023-02-01 22:50:56 UTC
This caused multiple problems:
https://bugzilla.redhat.com/show_bug.cgi?id=2158891

I am going to change the Suggests to Recommends.