Here, admin_diliprajbaral is an additional FTP user and gbiplesh is an user.

I suspect it has something to do with /sbin/nologin but I do not know that it means. So, how can I get these FTP accounts to work? Plus how can I get new accounts work as soon as they are created without any manual fixes?

UPDATE:
Editing /etc/passwd to change /sbin/nologin fixes the problem. But why is this happening by default?

By defaul FTP accounts cant use SFTP just FTP, only main vestacp user can use SFTP / SSH access, so admin user, or any vestacp user

Aditional FTP accounts cant access to FTP because this are only for FTP access i suppose this is made to improve security.

Aditional FTP accounts are limited so, not access whit those to to SFTP / SSH

This accounts are limited to web space -> /home/admin/web/diliprajbaral.com
So if you do SSH access they can access also orther website accounts, in this case you not need create new aditional FTP account just use main user account in this case admin.

And that is the point, why you need create aditional FTP if then you leave it grant access to all orther websites whit SSH / SFTP access.