Although this is not the place for plugin recommendations, there are several ‘subscriber’ plugins available in the repository. I’ve used the “Email Subscribers” plugin for a while. It works well, although there was some difficulties with it when they did a major revision to their version 4. (Which is a tale about fully testing code.)
If you don’t want a plugin, then you will have to write your own code. A bit complex to describe here. But there are many ‘googles’ (or ‘bings’ or ‘ducks’) that can help you with the process. So start there.