Lagen innebär också att de asylsökare som redan befinner sig i landet kommer flyttas till lägren. Där ska de stanna medan deras asylansökningar behandlas.
Landets regering motiverar lagen med att de asylsökande utgör en säkerhetsrisk för Ungern. Därför ska de förvaras utanför det fria samhället.
Enligt premiärminister Viktor Orbán är lagen ett svar på de terrorattacker i Europa som utförts av migranter.
Men lagen stöter på kritik utifrån. Bland kritikerna finns Human Rights Watch (HRW) som anser att dylik internering strider både mot internationell rätt och EU-rätt.
Ungern har redan placerat vissa asylsökare i öppna läger, men nu ska även de placeras i slutna läger, skriver Svenska Yle.
Ungern har konsekvent vägrat ta emot sin så kallade andel av de 160 000 asylsökare som EU fördelade i fjol. Enligt den ungerska regeringen har endast cirka 1 000 personer sökt asyl i Ungern i år.