Germany's cabinet has approved a new asylum law aimed at reducing the number of migrants arriving from the Balkans.
The change, which will need parliamentary approval, would prevent people from Kosovo, Montenegro and Albania from seeking asylum in Germany.
Border controls were imposed by Germany to slow the influx of migrants and refugees earlier this month.
The UN refugee agency says more than 514,000 people have crossed the Mediterranean into Europe this year.
The majority have come via Greece and almost 3,000 people have died on the journey or are missing, it says.
Germany alone expects between 800,000 and one million people to seek asylum in 2015, more than four times the number last year.
Although the largest number are from Syria, almost 40% of asylum applications have come from countries in the Western Balkans, including Kosovo, Albania and Serbia.
All EU countries have their own lists of "safe countries", where asylum seekers can be returned quickly provided their individual applications are rejected, and member states are soon expected to agree a common list that includes Kosovo, Albania and Serbia.
MPs are now likely to add the three countries to the German list by the end of 2015.
The cabinet also agreed other measures to help Germany's 16 federal states cope with the increase in the number of migrants and refugees. The national government will pay the states a flat fee of €670 (£500; $750) a month for every person looked after.
The package of measures also includes stricter asylum rules and faster procedures, enabling authorities to carry out deportations without prior warning.
The movement of migrants has continued despite the recent border controls. German police registered 30,000 new arrivals in the past 10 days, according to Bild newspaper. Neighbouring Austria said 3,700 migrants had crossed its borders on Monday.
Hungary fenced off its border with Serbia a fortnight ago as it tried to stop people following the Western Balkan migration route. An estimated 85,000 people have since entered Croatia instead, trying to get into Slovenia or Hungary via a different route.
There is growing concern over Germany's ability to take in such large numbers of refugees.
German President Joachim Gauck warned on Sunday there was a limit to what the country could do, even though it wanted to help refugees. "Our ability to take in people is limited, although we don't know yet where those limits are," he said.
Social tensions have increased, especially in eastern areas, and asylum shelters have been targeted by far-right activists.