You can use any buffer you like. The choice should depend on what you know about the biology of the protein you are interested in. Consulting the literature on the protein may identify commonly used buffers for that protein.
A commonly used buffer is Tris-HCl because it is inexpensive. It is best used for pH between 7.5 and 8.5. A typical concentration is 25 or 50 mM. If you want to use a slightly lower pH, HEPES-NaOH is good in the pH range 7-8, but it is more expensive than Tris. Sodium or potassium phosphate buffer can also be used in the pH range 6-8. However, you should not use a sodium phosphate buffer if you plan to store the protein solution at -20oC because of substantial pH changes that occur upon freezing.
For an intracellular protein lacking disulfide bonds, you might also want to include a reducing agent at 1-2 mM (such as dithiothreitol, TCEP or 2-mercaptoethanol), and 1 mM EDTA to bind up any contaminating metal ions than promote oxidation. On the other hand, for extracellular proteins, you probably do not want to include a reducing agent, because you want to maintain disulfide bonds.
You should consider whether you want to include any particular ions that the protein needs. For example, some metalloenzymes bind metal ions relatively weakly, so that it may be a good idea the ions should be included in the buffer.
Some other substances you might decide to add to the buffer include various salts (most commonly NaCl), a non-ionic detergent, or a sugar (e.g. trehalose).