П.П стана някакво мазало, само да се поясня - примерно при public key автентикация в ssh, PAM обикновено не участва в сметките.
Аз си имам малка теория,
Трябва да се казва PAAM. Plugable Auth. & Authorization Module.
Защото ключовете са метод за автентикация, а не за оторизация.
sshd ако имплементира механизъма за работа с SSH ключове, тогава няма проблем да разбере дали човека може да се логне.
НО
Трябва да се допита до PAM за да разбере дали потребителя е оторизиран за това - например ако има включен pam_tally, дали потребителя е оторизиран да се логне след 5 грешни опита...
Това, че PAM не се използва в работата с ключове според мен е добре, защото така OpenSSH може да си работи прекрасно и на системи без PAM.
Та на въпроса със SFTP-то...
Аз мисля, че Нетър сам си отговаря в поста:
Та... къде last мълчи? Оказва се, че last мълчи, когато потребителите влязат в системата без да използват tty/pts. Такива са случаите, когато потребителят влезе през SFTP клиент, rsync и SCP. Един често срещан сценарий на такова влизане е през "Shell link" опцията на mc.
От манюала:
"
The wtmp file records all logins and logouts. Its format is exactly like utmp except that a null
username indicates a logout on the associated terminal. Furthermore, the terminal name ~ with user‐
name shutdown or reboot indicates a system shutdown or reboot and the pair of terminal names |/}
logs the old/new system time when date(1) changes it.
wtmp is maintained by login(1), init(
, and
some versions of getty(
(e.g., mingetty(
or agetty(
). None of these programs creates the
file, so if it is removed, record-keeping is turned off."
Та и Гейт е прав де... обаче:
Късно е и малко залупих, SSH, ако иска да е от добрите ще използва PAM... само трябва да го излъжем да логва.
Така
В момента имам следния файл на Fedora 18:
[root@ivan-laptop pam.d]# ll /etc/pam.d/sshd
-rw-r--r--. 1 root root 676 17 фев 1,49 /etc/pam.d/sshd
[root@ivan-laptop pam.d]# cat /etc/pam.d/sshd
#%PAM-1.0
auth required pam_sepermit.so
auth substack password-auth
auth include postlogin
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
session include postlogin
Ако направя следното:
[root@ivan-laptop pam.d]# sftp testuser@localhost
testuser@localhost's password:
Connected to localhost.
sftp>
Тогава last мълчи а Neter е притеснен.
Обаче,, бивайки офицер от запаса правя следното:
[root@ivan-laptop pam.d]# cat /etc/pam.d/sshd
#%PAM-1.0
auth required pam_sepermit.so
auth substack password-auth
auth include postlogin
account required pam_nologin.so
account include password-auth
password include password-auth
# pam_selinux.so close should be the first session rule
session required pam_selinux.so close
session required pam_loginuid.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
session required pam_selinux.so open env_params
session optional pam_keyinit.so force revoke
session include password-auth
session include postlogin
session required pam_lastlog.soСега правя пак:
[root@ivan-laptop pam.d]# sftp testuser@localhost
testuser@localhost's password:
Connected to localhost.
sftp>
И резултата е:
testuser ssh localhost Sun Feb 17 01:50 still logged in
testuser ssh localhost Sun Feb 17 01:49 - 01:49 (00:00)
Мога да ви кажа че това си е асъл sftp защото шела ми е /sbin/nologin.
Трикътлика е в модула pam_lastlog, който според документацията:
pam_lastlog is a PAM module to display a line of information about the last login of the user. In addition, the module maintains the /var/log/lastlog file.
И даже още по якото:
nowtmp
Don´t update the wtmp entry.
Да бе да

Така, че Гейт лошите винаги могат да намерят нещо да базикнат, ама и ние не сме много тъпи

Дето вика един скроро..
Па тея си мислели че ние доматите с колците ги ядем