“lftp” login ainda é possível para usuários bloqueados “/etc/pam.d/vsftpd”

1

Eu tenho um servidor ftp em execução na máquina 192.168.122.50

Abaixo estão as últimas três diretivas do arquivo /etc/vsftpd/vsftpd.conf

pam_service_name=vsftpd
#userlist_enable=YES
#userlist_deny=YES

Abaixo está o conteúdo do arquivo /etc/pam.d/vsftpd

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth       required     pam_shells.so
auth       include      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth

Abaixo está o conteúdo do arquivo / etc / vsftpd / ftpusers

#This is the list of blocked users as per the following line /etc/pam.d/vsftpd
#auth required pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed

root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody

Portanto, dois usuários, por exemplo, root , devem ser impedidos de acessar o servidor ftp nesta máquina e ssam deve ser permitido.

Agora da máquina cliente 192.168.0.2, eu tentei isso.

am@centos ~]$ ftp 192.168.122.50
Connected to 192.168.122.50 (192.168.122.50).
220 (vsFTPd 2.2.2)
Name (192.168.122.50:ssam): ssam    
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> exit
221 Goodbye.
[ssam@centos ~]$ ftp 192.168.122.50
Connected to 192.168.122.50 (192.168.122.50).
220 (vsFTPd 2.2.2)
Name (192.168.122.50:ssam): root
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> bye
221 Goodbye.

A saída estava em linha com as configurações pam , pois o usuário ssam foi permitido e o usuário root foi bloqueado.

Agora eu tentei o comando lftp no cliente para se conectar ao servidor para o usuário root.

[ssam@centos ~]$ lftp [email protected]
Password: 
lftp [email protected]:~>

O login foi de fato possível bloqueado usuário root quando recebi o prompt lftp. Agora eu tentei executar um comando.

lftp [email protected]:~>
ls: Login failed: 530 Login incorrect.

Agora parece que o servidor chegou a bom senso e me diz que não consegui fazer mais nada. Mas o módulo de autenticação conectável deveria ter bloqueado o usuário root de entrar no servidor na primeira instância.

Alguém poderia explicar isso para mim?

    
por sjsam 26.09.2013 / 08:26

2 respostas

2

IMO, é uma maneira de como o lftp client funciona. Verifique o arquivo de log /var/log/secure (no RHEL / CentOS) ou similar para eventos como

pam_listfile(vsftpd:auth): Refused user root for service vsftpd

Eu verifiquei esse comportamento por farejar tráfego de FTP (RHEL 6.x, vsftpd 2.2.2, lftp 4.0.9). A conexão FTP não é estabelecida até que você insira algum comando FTP válido (também conhecido como ls ) e não quando você insere o nome de usuário e sua senha.

    
por 26.09.2013 / 09:08
-1
vim /etc/vsftpd/vsftpd.conf 

Venha a segunda última linha .... userlist_enable="NO"

Salve e depois disso

# vim /etc/vsftpd/ftpusers

remova o usuário "root" dele ... neste arquivo

Usuários que não têm permissão para efetuar login via ftp. Salve e reinicie o serviço. Espero que funcione .....

    
por 26.09.2013 / 14:45

Tags