You can find GeoJSON data for the United states here
That file will indicate states using numeric codes instead of names. See here for conversion between codes and names.
We've written a short script to download the aforementioned data for you, in a manner useable for the rest of this tutorial.
We've written a function load_raster_with_mask which takes a raster file and GeoJSON mask, and outputs the masked data.
There's also a [short tutorial](nb/Geojson and Rasterio Demo.ipynb) explaining how it works and how to use it to compute some basic statistics.