Legally necessary? It depends.
For example, if you run a news site where people from potentially many countries could comment, there is the potential for someone to say something that could be illegal/slanderous to their government. That government could then take legal action against you if you didn't have an agreement on the basis that you failed to moderate said comments. This could be a loss of a website if your host got involved, or a ton of court fees.
For a more real example, think about Twitter back when the Iran election was taking place. Millions of slanderous comments or illegal protest movements were being organized on Twitter. Do you not think that Iran had hired attorneys from the US trying to pressure legal action against Twitter for allowing those comments to take place?
In the best case scenario, it's a couple minutes work on your part to throw a template agreement up. In the worst case scenario, it might save you some money and time.