Protection of refugees is an ancient custom. Many people practiced it, mostly for their own gain and applied to entire people/tribes. For instance, the Romans used, and sometimes invited, refugees to resettle depopulated areas.
Contemporary refugees law instead is a product of World War II, and in fact was originally limited to the people affected by the war and related events in Europe. It was then extended to everybody in 1967. At that time large scale movement of population was thought to be exceptional and difficult, so if you happened to accept many refugees it's because you wanted them and you bring them home yourself. For instance, this is what the USA had done after the Vietnam War.
This means that countries, like Greece, that cannot or don't want to accept refugees, have many ways to refuse them. For one, there is the debate between which one are migrants and which one are refugees which have different protections. This even putting aside the illegal things that they have accused of doing, for example Spain and Greece have been accused of shooting migrants/refugees before the current mass exodus.
Now to your questions. The answer is that you cannot enter from the land for the simple fact that they are considered safe in Turkey, but not at sea, so they can be refused at the border and not (legally) on the sea. Because at sea they are at imminent danger of death, while on land they are not, since Turkey is a stable country. So they can be refused entry as they don't have proper authorization[1]. Even Turkey might be unhappy about changing the situation because that would essentially invite large amount of foreigners to pass through its lands just to reach Europe. In general terms, the European countries are full of contradictions and have an interest to make the journey as hard as possible, even if they want to accept refugees, to not anger their own opposition. Look at Germany, they said: «we accept everybody», but they haven't actually done anything to ease their journey, leaving thousand of people disorderly roaming European countries. At face value that seems to be a very stupid thing, but it allow Merkel to somewhat limit the opposition.
The second reason is that while indeed Germany have chosen to exempt Syrian refugees from the Dublin Regulation, that forces European countries to accept refugees at the point of entry, this is not true for everybody else. So there are people that couldn't go to Germany legally, by entering at sea Greece could simply refuse to register them and let them move north. As Greece and Italy have been accused of doing.
The fundamental problem is that Germany may been willing to accept educated Syrian refugees but it has no interest in screening them and make the necessary work to keep out the unwanted Afghans or Ethiopians. So it is leaving Greece and Italy to bear most of the cost of keeping people out, including the risk of being forced to accept people that they don't want and themselves don't want to be there.
[1] There is a also a concept of Safe Country, but it's unrelated to this problem. Although Greece is thinking about declaring Turkey as such, which would allow them to send back the people already in Greece.