Yes, your approach is correct. By the fundamental isomorphism theorem, if $f$ is such a morphism, then $\dfrac {D_4} {\ker f} \simeq \text{range } f$, and since $f$ is surjective, this means $\dfrac {D_4} {\ker f} \simeq H$.
Conversely, if $N$ is a normal subgroup of $D_4$, then the natural canonical projection $\pi : D_4 \to \dfrac {D_4} N, \ \pi (x) = \hat x$ is surjective.
Therefore, listing all groups to which you can find surjective morphisms from $D_4$ is synonymous to listing all normal subgroups of $D_4$. Assuming $D_4 = \langle R, F \mid R^4 = F^2 = (RF)^2 = 1 \rangle$, these are:
- the trivial subgroups $1$ and $D_4$
- $\{1, R^2\}$
- $\langle R^2, F \rangle$
- $\langle R^2, RF \rangle$
Factoring $D_4$ through the subgroups listed above will yield all the possible groups $H$ that you are looking for.