Some Swiss towns plan to keep asylum-seekers away from public places such as swimming pools, playing fields and libraries, in a move human rights groups say is racist.
The curbs are aimed at preventing tensions with residents, officials say.
Asylum-seekers are to be housed in special centres, mainly former army barracks, and the first one has opened in the town of Bremgarten.
Switzerland's share of asylum-seekers is well above the European average.
Asylum laws were tightened in June.
The BBC's Imogen Foulkes in Geneva says the controversy reflects growing voter unease at the number of asylum-seekers in Switzerland - per head of population, among the highest in Europe.
Currently about 48,000 people are seeking asylum in Switzerland.
Roman Staub, mayor of the town of Menzingen, said asylum-seekers should be banned from "sensitive areas" such as the vicinity of a school. "This is certainly a very difficult area, because here asylum-seekers could meet our schoolchildren - young girls or young boys," he said.
In Bremgarten, a church will also be off-limits to asylum-seekers.
Human rights groups are outraged, calling the measures racist, our correspondent reports.
The UN refugee agency (UNHCR) said it was a principle that asylum-seekers should enjoy freedom of movement.
"They are in Switzerland legally and have committed no crime," spokesman Dan McNorton told our correspondent.
"In order to encourage a welcoming environment for people who are uprooted and often vulnerable, it is important to reinforce public messages which aim at avoiding the risk of stigmatisation of asylum-seekers and also at promoting refugees' integration.
"In many cases we are talking about children, women, men who fled from war and persecution and wish as much as possible to go back to a normal life."
The UNHCR spokesman added that refugees and asylum-seekers had, in turn, "to respect the laws of the country they are in".
The government says the rules are not formal bans on movement - but admits its own department of immigration agreed the restrictions with town councils.
In June voters overwhelmingly backed a controversial move to tighten asylum restrictions, amid a spike in the number of refugees in the country.
Switzerland counts one asylum-seeker for every 332 inhabitants. The European average is one asylum-seeker for every 625 inhabitants.