bejelentkezés a konzolba: hiba - Linux Mint 19.1

Fórumok

Pár hete, amikor kijött, telepítettem a Linux Mint 19.1-et.
A napokban amikor a Ctrl+Alt+F1 -es konzolba be szerettem volna
jelentkezni, abba a problémába ütköztem ha beírom a felhasználó
nevet és továbbköltöm az Enterrel, nem várja meg a jelszó bekérését
hanem azonnal tovább lép és ez 4 alkalommal megismétli.
Aztán visszatér a login prompthoz.
Mintha minden jelszó bekérésnél az Entert ütném le,
de hozzá sem érek az enterhez. :-(

Van-e erre valami magyarázat vagy valakinek valami ötlet?

Hozzászólások

Csak egy gyors kérdés: ezek szerint nincs X (grafikus felület) a rendszeren?

---------------------------------------------------------------
Ritkán szólok hozzá dolgokhoz. Így ne várj tőlem interakciót.

???? Hát.... lehet nálam van a hiba, de soha nem fagyott le úgy az X, hogy a gép ment tovább, és ki lehetett volna lépni hagyományos konzolra. (xubi 14.04)

---------------------------------------------------------------
Ritkán szólok hozzá dolgokhoz. Így ne várj tőlem interakciót.

Pénteken ugyanebbe a hibába futottam, de Ubuntu 18.04 alatt.

A futó grafikus rendszer mellett Ctrl+Alt+Fx konzolra váltva, a felhasználónév + ENTER után megjeleníti a password bekérő sort és kb. négyszer magától lépteti tovább, mintha beírtam volna és lenyomtam volna az ENTER-t, majd a végén kiírja, hogy 60 másodpercre ki vagyok tiltva a rendszerből a hibásan megadott jelszavak miatt.

a nap folyamán egy másik gépre is felraktam a Linux Mint 19.1-est
és ezen is ugyan az a hiba, a Ctrl+Alt+Fn konzolba való bejelentkezéskor.
:(
Ezek szerint nagyon valószínű, hogy az újra telepítés nem segít :(

Az

/etc/pam.d

konyvtarban levo file-ok tartalmara lennek kivancsi.

/etc/pam.d directory tartalma:

miller@HP-ProBook440G3:/etc/pam.d$ ls -l
összesen 108
-rw-r--r-- 1 root root 384 jan 25 2018 chfn
-rw-r--r-- 1 root root 92 jan 25 2018 chpasswd
-rw-r--r-- 1 root root 581 jan 25 2018 chsh
-rw-r--r-- 1 root root 56 dec 11 12:24 cinnamon-screensaver
-rw-r--r-- 1 root root 1208 jan 13 17:46 common-account
-rw-r--r-- 1 root root 1286 jan 13 17:46 common-auth
-rw-r--r-- 1 root root 1515 jan 13 17:46 common-password
-rw-r--r-- 1 root root 1510 jan 13 17:46 common-session
-rw-r--r-- 1 root root 1475 jan 13 17:46 common-session-noninteractive
-rw-r--r-- 1 root root 606 nov 16 2017 cron
-rw-r--r-- 1 root root 69 márc 27 2018 cups
-rw-r--r-- 1 root root 884 márc 22 2018 lightdm
-rw-r--r-- 1 root root 551 márc 22 2018 lightdm-autologin
-rw-r--r-- 1 root root 727 márc 22 2018 lightdm-greeter
-rw-r--r-- 1 root root 4945 jan 25 2018 login
-rw-r--r-- 1 root root 92 jan 25 2018 newusers
-rw-r--r-- 1 root root 520 ápr 4 2018 other
-rw-r--r-- 1 root root 92 jan 25 2018 passwd
-rw-r--r-- 1 root root 270 júl 13 2018 polkit-1
-rw-r--r-- 1 root root 168 febr 26 2018 ppp
-rw-r--r-- 1 root root 143 febr 14 2018 runuser
-rw-r--r-- 1 root root 138 febr 14 2018 runuser-l
-rw-r--r-- 1 root root 84 nov 8 19:09 samba
-rw-r--r-- 1 root root 2257 jan 25 2018 su
-rw-r--r-- 1 root root 239 jan 18 2018 sudo
-rw-r--r-- 1 root root 317 ápr 20 2018 systemd-user
miller@HP-ProBook440G3:/etc/pam.d$

Hat hogy mi van a file-okban benne :-)

A konzolos

login

program a PAM konyvtarat (Pluggable Authentication Modules) hasznalja a jelszo bekeresehez, annak pedig az

/etc/pam.d

-ben vannak a a konfiguracios file-jai. Ezek kozul a

login

program nem meglepo modon az

/etc/pam.d/login

nevu file-t hasznalja (ami persze hasznalhat kozos konfiguracios file-okat is, pl.

common-auth

).

Szoval erdekelne a kovetkezo parancs kimenete:

cat /etc/pam.d/login
cat /etc/pam.d/common-auth
cat /etc/pam.d/common-account
cat /etc/pam.d/common-session

(ne aggodj, a szupertitkos jelszavad az

/etc/shadow

-ban van)

itt vannak a kért file-ok tartalma:

#
# The PAM configuration file for the Shadow `login' service
#

# Enforce a minimal delay in case of failure (in microseconds).
# (Replaces the `FAIL_DELAY' setting from login.defs)
# Note that other modules may require another minimal delay. (for example,
# to disable any delay, you should add the nodelay option to pam_unix)
auth optional pam_faildelay.so delay=3000000

# Outputs an issue file prior to each login prompt (Replaces the
# ISSUE_FILE option from login.defs). Uncomment for use
# auth required pam_issue.so issue=/etc/issue

# Disallows root logins except on tty's listed in /etc/securetty
# (Replaces the `CONSOLE' setting from login.defs)
#
# With the default control of this module:
# [success=ok new_authtok_reqd=ok ignore=ignore user_unknown=bad default=die]
# root will not be prompted for a password on insecure lines.
# if an invalid username is entered, a password is prompted (but login
# will eventually be rejected)
#
# You can change it to a "requisite" module if you think root may mis-type
# her login and should not be prompted for a password in that case. But
# this will leave the system as vulnerable to user enumeration attacks.
#
# You can change it to a "required" module if you think it permits to
# guess valid user names of your system (invalid user names are considered
# as possibly being root on insecure lines), but root passwords may be
# communicated over insecure lines.
auth [success=ok new_authtok_reqd=ok ignore=ignore user_unknown=bad default=die] pam_securetty.so

# Disallows other than root logins when /etc/nologin exists
# (Replaces the `NOLOGINS_FILE' option from login.defs)
auth requisite pam_nologin.so

# SELinux needs to be the first session rule. This ensures that any
# lingering context has been cleared. Without this it is possible
# that a module could execute code in the wrong domain.
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close

# Sets the loginuid process attribute
session required pam_loginuid.so

# SELinux needs to intervene at login time to ensure that the process
# starts in the proper default security context. Only sessions which are
# intended to run in the user's context should be run after this.
session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
# When the module is present, "required" would be sufficient (When SELinux
# is disabled, this returns success.)

# This module parses environment configuration file(s)
# and also allows you to use an extended config
# file /etc/security/pam_env.conf.
#
# parsing /etc/environment needs "readenv=1"
session required pam_env.so readenv=1
# locale variables are also kept into /etc/default/locale in etch
# reading this file *in addition to /etc/environment* does not hurt
session required pam_env.so readenv=1 envfile=/etc/default/locale

# Standard Un*x authentication.
@include common-auth

# This allows certain extra groups to be granted to a user
# based on things like time of day, tty, service, and user.
# Please edit /etc/security/group.conf to fit your needs
# (Replaces the `CONSOLE_GROUPS' option in login.defs)
auth optional pam_group.so

# Uncomment and edit /etc/security/time.conf if you need to set
# time restraint on logins.
# (Replaces the `PORTTIME_CHECKS_ENAB' option from login.defs
# as well as /etc/porttime)
# account requisite pam_time.so

# Uncomment and edit /etc/security/access.conf if you need to
# set access limits.
# (Replaces /etc/login.access file)
# account required pam_access.so

# Sets up user limits according to /etc/security/limits.conf
# (Replaces the use of /etc/limits in old login)
session required pam_limits.so

# Prints the last login info upon successful login
# (Replaces the `LASTLOG_ENAB' option from login.defs)
session optional pam_lastlog.so

# Prints the message of the day upon successful login.
# (Replaces the `MOTD_FILE' option in login.defs)
# This includes a dynamically generated part from /run/motd.dynamic
# and a static (admin-editable) part from /etc/motd.
session optional pam_motd.so motd=/run/motd.dynamic
session optional pam_motd.so noupdate

# Prints the status of the user's mailbox upon successful login
# (Replaces the `MAIL_CHECK_ENAB' option from login.defs).
#
# This also defines the MAIL environment variable
# However, userdel also needs MAIL_DIR and MAIL_FILE variables
# in /etc/login.defs to make sure that removing a user
# also removes the user's mail spool file.
# See comments in /etc/login.defs
session optional pam_mail.so standard

# Create a new session keyring.
session optional pam_keyinit.so force revoke

# Standard Un*x account and session
@include common-account
@include common-session
@include common-password

-------------------------------------------------------------------------------------------

#
# /etc/pam.d/common-auth - authentication settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authentication modules that define
# the central authentication scheme for use on the system
# (e.g., /etc/shadow, LDAP, Kerberos, etc.). The default is to use the
# traditional Unix authentication mechanisms.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
auth [success=1 default=ignore] pam_unix.so nullok_secure
# here's the fallback if no module succeeds
auth requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth optional pam_ecryptfs.so unwrap
auth optional pam_cap.so
# end of pam-auth-update config

-------------------------------------------------------------------------------------------

#
# /etc/pam.d/common-account - authorization settings common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of the authorization modules that define
# the central access policy for use on the system. The default is to
# only deny service to users whose accounts are expired in /etc/shadow.
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.
#

# here are the per-package modules (the "Primary" block)
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
# here's the fallback if no module succeeds
account requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
account required pam_permit.so
# and here are more per-package modules (the "Additional" block)
# end of pam-auth-update config

------------------------------------------------------------------------------------------

#
# /etc/pam.d/common-session - session-related modules common to all services
#
# This file is included from other service-specific PAM config files,
# and should contain a list of modules that define tasks to be performed
# at the start and end of sessions of *any* kind (both interactive and
# non-interactive).
#
# As of pam 1.0.1-6, this file is managed by pam-auth-update by default.
# To take advantage of this, it is recommended that you configure any
# local modules either before or after the default block, and use
# pam-auth-update to manage selection of other modules. See
# pam-auth-update(8) for details.

# here are the per-package modules (the "Primary" block)
session [default=1] pam_permit.so
# here's the fallback if no module succeeds
session requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
session required pam_permit.so
# The pam_umask module will set the umask according to the system default in
# /etc/login.defs and user settings, solving the problem of different
# umask settings with different shells, display managers, remote sessions etc.
# See "man pam_umask".
session optional pam_umask.so
# and here are more per-package modules (the "Additional" block)
session required pam_unix.so
session optional pam_systemd.so
session optional pam_ecryptfs.so unwrap
# end of pam-auth-update config

Nem latok benne semmi gyanusat (arra voltam kivancsi, hogy nem kerult-e fel valami modul, ami meg a jelszokeres elott megallitja a bejelentkezest).

Van nekem egy programom, amit PAM konfiguracio tesztelesere irtam. Ez ugyanazt csinalja, mint a

login

, csak reszletes hibauzeneteket ad (a

login

szandekosan nem segiti ilyesmivel a potencialis tamadot). Toltsd le, bontsd ki pl. a sajat home konyvtaradba, masold at az

/etc/pam.d/login

-t

/etc/pam.d/test

neven (ezt a konfigot hasznalja a programom, igy kesobb majd nyugodtan garazdalkodhatunk benne, a rendszerbe valo bejelentkezest nem tudjuk elrontani). Belemesz abba a konyvtarba, ahova kibontottad a programot, majd elinditod (feltetelezem, hogy 64 bites rendszered van):

./pam-test-amd64

Ez egy normal konzolos bejelentkezest fog inditani, probalj meg bejelentkezni. Ha sikerul, akkor az

/etc/pam.d

-ben levo konfigok jok, a

login

program beszel felre valamiert, ha itt sem sikerul, akkor a modulokat fogjuk megnezni kozelebbrol.

Ez a teszt eredménye:

./pam-test-amd64
Username: gerendas
Password:
pam-test-amd64: authenticated as user gerendas
pam-test-amd64: initgroups(): Operation not permitted

Korábban próbáltam a 19-es Mint login -ja cserélni a 19.1 -ét, persze azzal is hibás volt a bejelentkezés.

Amúgy a jelenség olyan mintha a agetty egyből két enter-t érzékelne és az ismétli.

pam-test-amd64: authenticated as user gerendas

Ezek szerint sikerult bejelentkezni.

pam-test-amd64: initgroups(): Operation not permitted

Valoszinuleg nem root-kent inditottad a programot, es nem is volt setuid root, de ettol meg beengedett (csak az esetleges extra csoport-tagsagaidat nem tudta beallitani).

Korábban próbáltam a 19-es Mint login -ja cserélni a 19.1 -ét, persze azzal is hibás volt a bejelentkezés.
Amúgy a jelenség olyan mintha a agetty egyből két enter-t érzékelne és az ismétli.

Esetleg probald meg a 19-esbol az agetty-t, vagy tegyel fel helyette egy mingetty-t.

Ez mar kicsit veszelyesebb, de azert talan nem fogjuk hazavagni a rendszert: kivancsi vagyok, hogy mi tortenik, ha az

agetty

az en programomat hivja meg. (root-kent) masold at a programomat a

/bin

-be

pam-test

neven, legyen root a tulajdonosa, es csak a root irhassa:

cp -p <programom> /bin/pam-test
chown root: /bin/pam-test
chmod u=rwx,go=rx /bin/pam-test

majd allitsd be az

agetty

-t, hogy a

login

helyett a

/bin/pam-test

-et hivja (sose hasznaltam

agetty

-t, a manual szerint a

--login-program

opcio kell neki).

Ha igy sem tudsz bejelentkezni, akkor kenytelenek leszunk megprobalni a

mingetty

-t.

Nálam Arch alatt nem volt ilyen gond sem a 4.15.0-val, sem a későbbi kernelekkel. Jelenleg a 4.20.7 fut. Persze attól még lehet Minték valami kernelpatcht toltak el. Mindenesetre érdekes, hogy ennyien belefutottatok, nem láttam még ilyet. A konzol az tényleg olyan, hogy annak mennie kéne mindentől függetlenül.

No keyboard detected... Press F1 to run the SETUP

OK!

Mégis mi a kapcsolat a kernel és a systemd között?

Hol keressük?
Amúgy angol nyelven is az első találat:

sudo apt-mark hold linux-*-4.15.0-4[45]-generic
sudo apt remove linux-*-4.15.0-4[45]-generic

sudo apt install linux-{image,headers}-4.15.0-43-generic

Bár még keresem, hogy van-e más ötlet.

bugs.launchpad.net/ubuntu/+source/linux/+bug/1814993

Én is Linux Mint 19-ről frissítettem 19.1-re,többször is próbáltam, de nem jött elő a hiba.