In the preceding recipe, we performed two separate tasks. The first was to enable a captive portal on one or more interfaces, using Local User Manager/Vouchers as the authentication method. The second task was to generate one or more voucher rolls containing voucher codes for use with the captive portal. Once the voucher rolls are generated, we can use those voucher codes for authentication. If voucher codes are the only form of authentication we use, then we don’t have to maintain a database of captive portal users, making voucher authentication the easiest form of authentication available.