You only need two satellites and the surface of the earth.
No, that's not true. I'll try to explain why.
Each satellite transmits (very roughly) "My precise position is (here), and the time by my clock is (timestamp)". (In fact the satellites send a bit more - including each other's positions - but that needn't concern us here.)
With one satellite, this tells you nothing about your position: you know the timestamp the satellite thought it was when it sent its transmission, but you have no idea how long that transmission took to arrive. (Unless you already happen to have a pre-synchronised atomic clock, which most GPS receivers do not!)
With two satellites, you can compare the timestamps you receive - the difference in the times tells you that one of the satellites is closer to you than the other, and by how much. That's enough to narrow down your position to anywhere on a specific curved surface (a hyperboloid, as it happens),
Another, third, satellite then narrows the position down further - this time to anywhere on a specific curve. If you know you're on the surface of the Earth, that's usually enough to give your position - job done; if not, a fourth satellite will do the job.
But that's not the end of the story: while you know the positions of the satellites to rather high precision, the measurements of when you received the timestamps are approximate - for a variety of reasons, but including the fact that atmospheric conditions may change the propagation speed of the signal (and you have no way of knowing whether this has happened), and the fact that (since your receiver doesn't have an atomic clock) its local clock will drift slightly over time.
If all of the satellites you're tracking are close together, then the differences between the timestamps you measure from the different satellites will be small. But the absolute error in your measurement (due to local clock drift, atmospheric conditions etc) remains roughly the same - so the percentage imprecision in the differences becomes much larger - and so the uncertainty in your position increases accordingly. This is what is referred to as "bad geometry".