The bottom post is the toughest post to make solid when you build outdoor stair railings. The usual technique is to bolt it to the stair stringers (the frame). But it'll only be solid if the stringers are solid. That's the challenging part.
First, build a level landing pad for the stair stringers. You don't need to pour a footing. Just dig out and compact a minimum 4-in. thick gravel base, then pour a concrete slab or lay paving stones.
Lay out and cut the stringers. (See How to Build Deck Stairs for more information.) Make the bottom tread cut 1-1/2 in. shorter than the others. You'll fill out this space with a 2-by “subriser” (see photo).
Fasten the top of the stringers to the deck. Rip a piece of treated 2-by lumber to match the height of the bottom riser, then screw this “subriser” to the bottom ends of all three stringers. The finished riser (cedar in our case) will cover it.
Cut each post to length, allowing them to run alongside the stringer to the ground. Then cut a 1-1/2 in. deep notch into the post so it sits over the stringer, flush with the outside face.
Tack the post into the framing, making sure it's tight to the stringer and subriser. Then cut and nail treated 2-by blocks between the stringers and tight to the backside of the posts. Next drill two 1/2-in. holes through the stringer and the post. Hold them 1-1/2 in. from the top and bottom. Drill another 1/2-in. hole through the subriser, the post and the block behind it. You'll need either an extra-long drill bit or an extension bit. Install 1/2-in. galvanized carriage bolts with washers and nuts. Tighten them firmly.
Finally, install the risers and treads as shown in the photo. The post won't be as rock-solid as one set in concrete. You'll still feel some give when you lean on it. But it's strong—it won't move unless the stairs move.
Note: Confirm the handrail detail on this post design with your local building inspector to make sure it's acceptable in your region.