I've been running vsftpd on OpenBSD for a number of years. It's been working fine on 5.7, 5.8, and 5.9. My vsftpd.conf file is very simple (minimal changes).
Here are the uncommented bits in vsftpd.conf
Code:
local_enable=YES
write_enable=YES
local_umask=006
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
idle_session_timeout=420
nopriv_user=_vsftpd
chroot_local_user=YES
secure_chroot_dir=/var/empty
pasv_min_port=49152
pasv_max_port=65535
text_userdb_names=YES
listen=YES
I have a single user account tuser01 with the shell set to /sbin/nologin
The tuser01 account is a member of group ftpusers. The home folder is for tuser is /storage01/ftpudata/tuser01 which is owned by root:ftpusers with permissions set to 750
I have added /sbin/nologin to /etc/shells
The above configuration works on all of my OpenBSD boxes except 6.0 and 6.1. On 5.9 boxes I run some with ftp and others with ftps with no issues.
The vsftpd daemon runs but at login I receive "500 OOPS: priv_sock_get_result" Connection closed by remote host.
Any insight would be helpful.