The DAAD (German Academic Exchange Service) offers funding opportunities both for Germans abroad and for international students in Germany. In most cases, students can be funded from their Master's phase onwards. However, they also provide funding opportunities for shorter stays and research projects.
You can find further information, including the DAAD scholarship database, by following the link below. Again, it is advisable to apply for scholarships early (preferably about a year in advance)!