Of course you do. You either need to buy the seed or seedling, buy the shovel, hell someone even owns the land the tree is going to be planted it.
Except for the fact that it is either private property, and thus stealing, or it is a national forest and thus illegal to take.
Of course in practice no one is going to give a shit, and sure you can snatch an acorn. But someone (or the government) still had to pay for and own that land, so the seed wasnt free to make, you just happened to not be the person paying for it.
You certainly dont have to follow the law.. doesnt change the fact that someone is paying for the land to grow the tree that produced the seed you planted. So it wasnt free even if you happened to steal it and so it was free to you.
I use the word theft lightly. It is a perfectly morally acceptable theft. I do not discourage you from snatching up and planting all the acorns you want. Moreover im sure whoever owned it wouldnt mind in the least that you took it. But the fact remains, someone is paying for that land the tree is on, so even though you are not the one paying for it, someone did, and thus it isnt free.
Public land is still owned by the government and is maintained through taxes that you are paying. So while I agree its great to plant trees on public land, it still isnt free.
The whole point here is that, well, nothing is free, not really. Its just in some cases it may not be clear who is paying for it.
What's public, no one owns it. As mentioned before, if you pick seeds from protected trees, not even the state should remove them (of course they "can")
Every state lists their own endangered/protected trees and plants.