Your passport should be valid for three months beyond your stay. That means that if you plan to travel in Germany for a month, your passport should be valid for at least four months from the date you enter Germany.
Germany is a signatory to the Schengen Agreement, which abolished borders between many countries in Europe. Entering any Schengen country allows you to travel in all other Schengen countries for up to 90 days without needing additional documents.
Nations that are covered by the Schengen Agreement are: Austria, Belgium, Czech Republic, Denmark, Estonia, Finland, France, Germany, Greece, Hungary, Iceland, Italy, Latvia, Lithuania, Luxembourg, Malta, Netherlands, Norway, Poland, Portugal, Slovak Republic, Slovenia, Spain, Sweden and Switzerland.
U.S. citizens are not required to get a visa if they travel to Germany or other Schengen countries on business or for pleasure, and their trip is for less than 90 days. However, longer travel or travel for other reasons (such as going to school) requires a visa.
While you can travel freely among the Schengen member countries, make sure you get a passport stamp when you first enter the Schengen area. You might need a proof of your length of stay in the area.
Non-U.S. citizens should check with the German Mission in their area about visa requirements for their country of citizenship.