Det opplyser innenriksminister Nancy Faeser på en pressekonferanse mandag kveld.
Grensekontrollene skal iverksettes 16. september og skal i første omgang vare i et halvt år. De gjelder grenseovergangene til Danmark, Belgia, Luxembourg, Nederland og Frankrike.
Fra før av har Tyskland innført grensekontroll på grensen til Polen, Tsjekkia, Østerrike og Sveits.
Tiltaket kommer samtidig som innvandringsdebatten går høyt i Tyskland som følge av flere angrep og forsøk på angrep.
For drøyt to uker siden knivdrepte en syrisk statsborger tre personer under en byfestival i Solingen. Mannen hadde fått avslag på asylsøknaden og hadde fått utvisningsordre til Bulgaria.
Nylig ble også en ung østerriker drept av politiet ved det israelske konsulatet i München. Han var utstyrt med en lang rifle, og politiet mener han hadde planer om å utføre et terrorangrep.
Kilder opplyser til nyhetsbyrået DPA at Tyskland har informert EU om beslutningen.
Østerrike motsetter seg Tysklands planer.
– Østerrike vil ikke godta individer som blir avvist ved grensen til Tyskland. Det er overhodet ikke noe spillerom, sier Østerrikes innenriksminister Gerhard Karner til tyske aviser mandag.
Karner understreker at Tyskland har rett til å sende folk tilbake dersom et annet land er ansvarlig for deres asylbehandling, i henhold til den såkalte Dublin-forordningen.
Men da er det nødvendig med en formell prosedyre og samtykke fra det gjeldende landet, understreker han.
Alle Tysklands naboland er med i Schengen-samarbeidet, noe som vanligvis innebærer at grensene kan krysses fritt.