We're trying to move our team chat from Skype to a private IRC server (InspIRCd) and we need to require some sort of authentication to prevent public access. I know we could have a global server password but that doesn't allow us to control who has access and obviously doesn't scale well (team member leaves, etc).
Are there any modules for Inspircd which support multi-user authentication?
The included sqlauth module seems like exactly what you want here.
The sqlauth module as devicenull suggested allows you to store usernames and password hashes in a SQL database (SQLite, PostgreSQL, MySQL, etc) and can even integrate with the user table from an existing application (mediawiki, phpBB, etc).
The ldapauth module supports directly integrating with LDAP servers (Active Directory, OpenLDAP, etc).
Another option is to have users connect through ZNC and not allow direct access to InspIRCd at all. In addition to requiring authentication before a user can connect, ZNC also supports SSL and implements history buffers so users can stay in a channel persistently without actually being connected 24/7. When user reconnect they get a replay of all activity which occurred while they were gone. ZNC supports simple password authentication out of the box, but ZNC modules also exist for using SSL Client Certificates or external SASL authentication including LDAP servers.