/bin/false simply exits with an error code.
It was used in the past for denied logins. However, nologin is better suited for that nowadays.
/sbin/nologin prints a message that login is denied/not possible and then exits with an error message.
Use this if you want to deny logins.
As for ftp, you can make some ftp users that don't correspond to "real" users (ie users that have a shell),
for instance, guest users, anonymous user, etc.
Check out "ftpaccess" for that.