$\newcommand{\from}{\colon}\newcommand{\Aut}{\rm{Aut}}\newcommand{\bdy}{\partial}$Here is a fairly hands-on proof. I'll use the following notation: $H = H_g$, $S = S_g = \bdy H$, and $F = F_g$. I'll write $g(S) = g(H) = g$. Also, $i \from S \to H$ is the inclusion map. > Suppose that $f_* \from \pi_1(S) \to F = \pi_1(H)$ is an epimorphism. Then there is a homeomorphism $k \from S \to S$ so that $i_* \circ k_* = f_*$. **Fact number one**: since $S$ and $H$ are Eilenberg-MacLane spaces, there is a map $f \from S \to H$ inducing $f_*$. Fix a *cut system* $D \subset H$: that is, a collection of $g(H)$ disks so that $H - n(D)$ is a three-ball. Homotope $f$ to make it transverse to $D$. Thus $C = f^{-1}(D)$ is a collection of simple closed curves in $S$. For any $\alpha \subset C$, let $D(\alpha)$ be the disk containing $f(\alpha)$. We now construct a graph $G$. We have a vertex $v(X)$ for every component $X$ of $S - C$. We have an edge $e(\alpha)$ for every component $\alpha$ of $C$. We connect one (both) end(s) of $e(\alpha)$ to $v(X)$ if one (both) side(s) of $\alpha$ are contained in $X$. Note that $G$ is a finite connected graph. Recall that the genus $g(S)$ is the number of curves we must cut $S$ along to obtain a connected planar surface. In similar fashion we define the *genus* $g(G)$ to be the number of edges we must remove from $G$ to obtain a tree. Deduce that $g(G) \leq g(S)$. The retraction $r \from S \to G$ induces an epimorphism $r_* \from \pi_1(S) \to \pi_1(G)$, a free group of rank $g(G)$. [This much of the proof already implies that $\pi_1(G)$ can only surject free groups of at most half the rank of $\pi_1(S)$.] Fix a point $x \in H - D$. We now define a map $h \from G \to H$ as follows. The map $h$ sends all vertices of $G$ to $x$. The edge $e(\alpha)$ is sent to any loop based at $x$ and meeting $D$ exactly once, transversely, at a point of $D(\alpha)$. (I am ignoring a small issue about orientations here.) We deduce that $f_* = h_* \circ r_*$. Thus $h_* \from \pi_1(G) \to F$ is an epimorphism. **Fact number two**: since free groups are Hopfian, $g(G) = g(S)$ and $h_*$ is an isomorphism. We now construct a handlebody $H'$, homotopy equivalent to $G$. Take $S$, thicken to get $S \times [0,1]$, and attach two-handles along the curves $C \times \{0\}$. We next attach three-handles to the sphere components of the lower boundary. We identify the groups $\pi_1(H')$ and $\pi_1(G)$. Let $i' \from S \to H'$ be the inclusion map. **Fact number three**: using Nielsen's theorem (giving generators of $\Aut(F)$), there is a homeomorphism $h' \from H' \to H$ inducing $h_*$. Consider the homeomorphism $k = (\bdy i)^{-1} \circ \bdy h' \circ \bdy i'$, where all domains and ranges are restricted to be $S$. Chasing the diagram of spaces shows that $i_* \circ k_* = f_*$, and we are done.