2. BE confident. Clearly and politely state what you want. Be prepared for rejection -- in fact seek rejection out to condition you to not care. Learn to call people by their name. It is music to their ears and they will enjoy your company more.
3. Do something that you feel is risky (but safe), like sky diving or entering a boxing tournament. Hopefully you will survive and you can draw strength in the future from this experience.
One of the "secrets" of life is we can pretend to be anything, and the longer we pretend, the more we actually change. Society will reflect back to you what you put out. Look at people and smile, they will start saying "hi" in return.
I find it the most difficult but at the same time the most efficient solution for low esteem issue.
On top of what the other commenters said!