The exact requirements depend on the specific federal state ("Bundesland"), university, department and professor
Each federal state of Germany has its own university law ("Landeshochschulgesetz"), and that may impose limitations on the admittance to a PhD program, Additionally, each university can impose additional rules, and so can the department (usually "Fakultät") where you want to apply for a PhD. Finally, you must be accepted as a PhD student by a professor and he, too, may have additional requirements for accepting you.
In the end, you'll have to contact a department representative (usually the at the examination office/"Prüfungsamt") to check the formal requirements. Make sure you tell them your degree, GPA (and preferably also the interpretation of that GPA on the German grade 1-5 scale) and the country in which you graduated. This person should be able to check whether your are applicable to enter a PhD program, not only based on their department rules, but also based on university rules and state law.
You'll also have to contact the professor that you want to act as your PhD supervisor, and apply for a PhD student position (this may be a teaching position, a research project position, or a simple unpaid agreement supervision).