You can solve the problem via integer linear programming as follows. For $i,j\in\{1,\dots,5\}$ and $k\in\{1,\dots,20\}$, let binary decision variable $x_{ijk}$ indicate whether cell $(i,j)$ takes values $k$. Let $c_j$ be the required sum of column $j$, and let $r_i$ be the required product of row $i$. For prime $p\in\{2,3,5,7,11,13,17,19\}$, let $\nu_p(n)$ be the $p$-adic valuation of $n$, that is, the exponent of $p$ in the prime factorization of $n$.
Let $N_{ij}=\{(i',j'):|i-i'| \cdot |j-j'|=2\}$ be the set of knight's move neighbors of cell $(i,j)$. The constraints are
\begin{align}
x_{1,1,20} &= 1 \tag1\label1 \\
x_{2,5,1} &= 1 \tag2\label2 \\
\sum_k x_{ijk} &\le 1 && \text{for all $i,j$} \tag3\label3 \\
\sum_i \sum_j x_{ijk} &= 1 && \text{for all $k$} \tag4\label4 \\
\sum_i \sum_k k x_{ijk} &= c_j && \text{for all $j$} \tag5\label5 \\
\sum_j \sum_k \nu_p(k) x_{ijk} &= \nu_p(r_i) && \text{for all $i, p$} \tag6\label6 \\
x_{ijk} &\le \sum_{(i',j') \in N_{ij}} x_{i',j',k+1} && \text{for all $i,j$ and $k < 20$} \tag7\label7
\end{align}
Constraints \eqref{1} and \eqref{2} enforce the given locations of $20$ and $1$.
Constraint \eqref{3} assigns at most one value to each cell.
Constraint \eqref{4} assigns each value to exactly one cell.
Constraint \eqref{5} enforces the column sums.
Constraint \eqref{6} enforces the row products.
Constraint \eqref{7} enforces the knight's move restriction.
The unique solution turns out to be
\begin{matrix} 20 &. &2 &7 &16 \\3 &8 &17 &12 &1\\. &19 &. &15 &6\\9 &4 &13 &18 &11\\. &. &10 &5 &14\end{matrix}