Let $p: \tilde{X} \rightarrow X$ be a covering map in the broad definition (empty sum allowed, as Hatcher does). First, $p[\tilde{X}]$ is open in $X$: let $y \in X$ with $x \in \tilde{X}$ such that $p(x) = y$. Let $U$ be an evenly covered neighbourhood of $y$, so $p^{-1}[U] = \sum_{i \in I} O_i$ (disjoint sum over index set $I$). As $x$ is in the sum, it is non-empty: some $O_{i_{0}}$ contains $x$ and $p |_{O_{i_0}}$ is a homeomorphism between $O_{i_{0}}$ and $U$. In particular $U \subset p[\tilde{X}]$, so $y$ is an interior point of $p[\tilde{X}]$.
Suppose $y \notin p[\tilde{X}]$. Then again take an evenly covered neighbourhood $U$ of $y$: $p^{-1}[U] = \sum_{i \in I} O_i$, disjoint sum over some index set $I$, where for every $i \in I$, the map $p|_{O_i}$ is a homeomorphism between $O_i$ and $U$. This means (!) that $I = \emptyset$, as otherwise we'd have a preimage for $y$, contradicting how we picked $y$. So in fact $p^{-1}[U] = \emptyset$, and this shows that $U \subset X\setminus p[\tilde{X}]$, so $p[\tilde{X}]$ is closed.
Now if $X$ is connected and $\tilde{X}$ is non-empty, then $p[\tilde{X}]$ is closed, open and non-empty, so equals $X$ by connectedness. So $p$ is surjective.
These are the only conditions we need: $X$ connected and $\tilde{X} \neq \emptyset$.
Here is how it goes.
Let $B$, be a space nice enough to have a (simply connected) universal cover, say $B$ is connected, locally connected and semi-locally simply connected. Let $(X,x_0)\to (B,b_0)$ be its universal cover.
Take a loop $\gamma: (S^1,1)\to (B,b_0)$ then you can lift $\gamma$ to a path $\overline{\gamma}: I\to X$ that projects to $\gamma$. Now $\overline{\gamma}(1)$ is an element of $X_{b_0}$. You can use then the following theorem.
Let $(Y,y_0)\to (B,b_0)$ be a (path) onnected and locally path connected space over $B$ and $(X,x_0)\to (B,b_0)$ is a cover of $B$, then a lift of $(Y,y_0)\to (B,b_0)$ to $(Y,y_0)\to (X,x_0)$ exists iff the image of $\pi_1(Y,y_0)$ inside $\pi_1(B,b_0)$ is contained in the image of $\pi_1(X,x_0)$ inside $\pi_1(B,b_0)$
Use the previous theorem with $(Y,y_0)=(X,\overline{\gamma}(1) )$.
This tells you that there exists a covering map $X\to X$ sending $x_0$ to $\gamma(1)$.
It is easy to see that this map depends only on the homotopy class of $\gamma$ using the following result
Let $(X,x_0)$ be a cover of $(B,b_0)$ and $Y$ be a connected space over $B$. If two liftings of $Y\to B$ to $Y\to X$ coincide at some $y_0$ in $Y$, the they're equal.
This tells you that if $\overline{\gamma}(1)=\overline{\tau}(1)$ then the two morphisms $X\to X$ you get, coincide.
Moreover, using the inverse of $\gamma$, you see that the morphisms $X\to X$ you get are automorphisms.
This gives you a well defined map $\pi_1(B,b_0)\to \text{Aut}_B(X)$.
Using what I said before, it is easy to see that it is an isomorphism.
Best Answer
I find the following a useful way of thinking about it.
We may as well prove the statement that a covering map with finite fibers is a proper map (this means that the pre-image of any compact set is compact). (This argument is nice because it easily generalizes to prove the statement that a locally trivial fiber bundle with compact fibers is proper).
First note that when the covering map is just the projection $U \times F \rightarrow U$ then this map is proper because the preimage of a compact set $K \subset U$ is just $K \times F$ which is compact (being the product of compact spaces). In general, suppose that $\widetilde{X} \rightarrow X$ is a cover with finite fiber, $F$, then we may take a cover $\{U_\alpha\}$ of $X$ so that the restriction of the map to the cover just looks like $U_\alpha \times F \rightarrow U_\alpha$, and we've already seen that this is a proper map.
It is an easy exercise to see that properness (as I've defined it above) is local on the target, i.e. that the map $\widetilde{X} \rightarrow X$ is proper if and only if there is a cover of $X$ where all the restrictions are proper. (Indeed, any compact subset of $X$ is covered by finitely many $U_\alpha$, and so the preimage of $X$ is the union of the preimages of those specific $X \cap U_\alpha$. A finite union of compact sets is compact, QED.)
It follows that $\widetilde{X} \rightarrow X$ is a proper map. But now, if $X$ is compact, then the preimage of $X$, which is $\widetilde{X}$, must be compact, which was to be shown.