Problemas de configuração do VSFTPD com 12.04

13

Então atualizei meu Ubuntu Server para 12.04 LTS hoje e agora o VSFTPD não funcionará. Eu acho que está relacionado a este VSFTPd parou de funcionar após a atualização

No entanto, diferentemente do autor da pergunta, não estou recebendo nenhuma mensagem de erro. Quando faço logon, recebo

220 (vsFTPd 2.3.5)
331 Please specify the password.
Password: 
530 Login incorrect.
ftp: Login failed

Sei que a senha está correta e tentei vários usuários. O vsftpd.log não mostra nada além de:

Tue May  1 15:19:48 2012 [pid 2] CONNECT: Client "192.168.1.133"
Tue May  1 15:19:53 2012 [pid 1] [USERNAME] FAIL LOGIN: Client "192.168.1.133"

O syslog não mostra nada. Aqui está o meu VSFTPD.conf (principalmente o padrão):

listen=YES
anonymous_enable=NO
local_enable=YES
check_shell=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/private/vsftpd.pem

Eu tentei o comando mencionado na pergunta anterior sem sucesso.

sudo chmod a-w /home/user

Obrigado, agradeço toda a sua ajuda!

Austin
fonte

Respostas:

22

No vsftpd.conf

Faça a seguinte alteração: pam_service_name = ftp

Salve suas alterações e reinicie o servidor ftp.

Martin L.
fonte
Muito obrigado! Você não acreditaria quanta dor isso tem sido!
Chris Edwards
5
Gostaria de elaborar sua solução?
frhd
Onde posso encontrar vsftpd.conf ..
Oliver Dixon
Isso resolveu o meu problema! WTF. Por que esse não é o nome do serviço padrão? O que é um serviço PAM?
danger89
isso acaba me dando: 500 OOPS: priv_sock_get_result O login falhou. 421 Serviço indisponível, servidor remoto encerrou a conexão
Ascherer
1

Existem várias razões pelas quais você pode obter esse motivo.

Firewall - >> Tcp_wrapper - >> PAM - >> SElinux - >> FTPService - >> Arquivo.

  1. Primeiro, verifique se o usuário especificado está bloqueado ou não em / etc / vsftpd / ftpusers / etc / vsftpd / user_list

  2. Verifique o SElinux Context ou Boolean para o mesmo.

  3. Faça o check-in no arquivo de diretório do PAM. /etc/pam.d/vsftpd

autenticação necessária pam_shells.so

se o usuário não possuir o shell requerido, como no / etc / shells, ele dará a mesma verificação de erro.

Sagar Ikhankar
fonte
0

Tente primeiro fazer login no FTP através do firefox ou de um navegador, para ter certeza de obter uma resposta sobre o motivo de não conseguir fazer login.

Isso é apenas uma precaução para confirmar se são as credenciais de login em si ou não.

kristian
fonte
0

Parece que a configuração atual do pam para o vsftp inclui um requisito para ter um shell válido, algo que você deseja evitar no caso de um usuário de FTP.

# Standard behaviour for ftpd(8).
auth    required    pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed

# Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so.

# Standard pam includes
@include common-account
@include common-session
@include common-auth
auth    required    pam_shells.so

A única coisa que você precisa fazer é comentar pam_shells.so de autenticação da última linha . Portanto, isso não é necessário.

Ou adicione um login a todos os seus usuários ftp.

Alterar o nome conforme sugerido no outro comentário não faz sentido, pois você perde o arquivo de negação.

Gonzalo Aguilar Delgado
fonte
0

Se estiver executando um kernel amd64, você precisará adicionar o seguinte ao seu /etc/vsftpd/vsftpd.conf

seccomp_sandbox=NO
Roberto Sagastume
fonte
-1

Existem conexões de protocolo que você deve conhecer ao fazer conexões FTP.

Essas conexões respondem à visita do usuário e são ativadas quando o usuário atual é autenticado.

No FTP, você receberá esse erro se o modo passivo não estiver ativo.

O arquivo de configuração abaixo é configurado de acordo com o software vsftpd e todas as configurações são definidas corretamente e, ao mesmo tempo, não há erros.

Ativo, modo passivo e permite portas de firewall. 2000 a 2500 / TCP

pasv_enable=Yes
pasv_max_port=2500
pasv_min_port=2000

% 100 Arquivo de configuração fixo do Vsftpd: /etc/vsftpd/vsftpd.conf

# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
# Please see vsftpd.conf.5 for all compiled in defaults.
#
# READ THIS: This example file is NOT an exhaustive list of vsftpd options.
# Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
# capabilities.
#
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
#
# Default umask for local users is 077. You may wish to change this to 022,
# if your users expect that (022 is used by most other ftpd's)
local_umask=022
#
# Uncomment this to allow the anonymous FTP user to upload files. This only
# has an effect if the above global write enable is activated. Also, you will
# obviously need to create a directory writable by the FTP user.
#anon_upload_enable=YES
#
# Uncomment this if you want the anonymous FTP user to be able to create
# new directories.
#anon_mkdir_write_enable=YES
#
# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# The target log file can be vsftpd_log_file or xferlog_file.
# This depends on setting xferlog_std_format parameter
xferlog_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=NO
#
# If you want, you can arrange for uploaded anonymous files to be owned by
# a different user. Note! Using "root" for uploaded files is not
# recommended!
#chown_uploads=YES
#chown_username=whoever
#
# The name of log file when xferlog_enable=YES and xferlog_std_format=YES
# WARNING - changing this filename affects /etc/logrotate.d/vsftpd.log
#xferlog_file=/var/log/xferlog
#
# Switches between logging into vsftpd_log_file and xferlog_file files.
# NO writes to vsftpd_log_file, YES to xferlog_file
xferlog_std_format=YES

pam_service_name=vsftpd
pasv_enable=Yes
pasv_max_port=2500
pasv_min_port=2000
tcp_wrappers=YES

Depois de ter todas essas configurações, lembre-se de definir as configurações do firewall.

  • Entrada TCP: 2000 a 2500 e 21
  • Saída TCP: 2000 a 2500 e 21

Lembre-se, você não pode usar ftp: // para acesso root. Você deve usar sftp: // para acessar a raiz.

FTP Adicionar nova conta:

  • adduser newftpuser
  • passwd newftpuser

Pasta ftp padrão:

  • / home / newftpuser
Ahmet Berk Başaran
fonte
Você quis dizer algo, mano? @ K7AAY
Ahmet Berk Başaran