As you argued, $f(1) = 2$, $f(2) = 3$ and $f(3) = 4$. Applying $f$ to each side of the equation $f(f(f(n))) = 4n$, we get $f(f(f(f(n)))) = f(4n)$. On the other hand, setting $n$ to $f(n)$ in $f(f(f(n))) = 4n$, we get $f(f(f(f(n)))) = 4f(n)$ Thus, $f(4n) = f(f(f(f(n)))) = 4f(n)$. By induction, for any integer $a$ and non-negative integer $k$, $f(4^k a) = 4^k f(a)$.
If $a$ is $1$ or $2$, then $f(a + 1) = f(a) + 1$. So
$$
\begin{equation}
\begin{split}
f(4^k a + 4^k) & = f(4^k (a + 1)) \\
& = 4^k f(a + 1) \\
& = 4^k (f(a) + 1) \\\
& = 4^k f(a) + 4^k \\
& = f(4^k a) + 4^k
\end{split}
\end{equation}
$$
Since $f$ is strictly increasing and integer-valued, this implies that the $4^k + 1$ values $f(4^k a + b)$ for $0 \leq b \leq 4^k$ are precisely the $4^k + 1$ values $f(4^k a) + b$ for $0 \leq b \leq 4^k$. That is, $f(4^k a + b) = f(4^k a) + b = 4^k f(a) + b$.
This is already enough to find $f(2023)$, since $2023 = 4^5 + 999$. $f(2023) = 4^5 f(1) + 999 = 3047$.
However, this isn't enough to find $f(n)$ for all $n$, since it excludes numbers that start with $3$ in base $4$, i.e. numbers of the form $3 * 4^k + b$ with $0 \leq b < 4^k$.
For these numbers, we note that $3 * 4^k + b = f(2 * 4^k + b) = f(f(4^k + b))$ by the above. Thus, $f(3 * 4^k + b) = f(f(f(4^k + b))) = 4(4^k + b)$.
So, for example, $f(13) = f(3 * 4^1 + 1) = 4(4^1 + 1) = 20$.