The problem with your approach is that you need values of $p$ such that $p$ is dividing a value like $f(r)$. Even if $f(0) \equiv 1\mod p$, this in no way helps find a value $r$ such that $p$ divides $f(r)$.
The idea is that to find such values of $r$, one needs to prove an existence result rather than explicitly construct such numbers. Indeed, as a consequence of the answers here, the set of primes dividing at least one element of $f(\mathbb N) = \{f(n) : n \in \mathbb N\}$ is an infinite set. The answer of Andre Nicolas is elementary enough and shows the desired result by contradiction.
Pick the first $2021$ such distinct primes $p_1,\ldots,p_{2021}$ which divide some element of $f(\mathbb N)$. Let $r_i \in \mathbb N$ be such that $p_i | f(r_i)$.
As a consequence of the fact that $x-y | f(x)-f(y)$ for any $x,y\in \mathbb Z$, we know that for any $i=1,2,\ldots,2021$ and $k \in \mathbb N$, $$kp_i|f(r_i+kp_i)-f(r_i) \implies p_i |f(r_i+kp_i)$$
It's sufficient, at this point of time, to assert the existence of $M \in \mathbb N$ such that $$
M \equiv r_i \pmod{p_i}, i=1,2,\ldots,2021.
$$
This follows from the Chinese remainder theorem since the primes $p_i$ are distinct and hence coprime to each other. The value $f(M)$ is divisible by each of $p_i,i=1,2,\ldots,2021$ and provides the desired conclusion.
Three remarks :
$f(0)=1$ is not important, it's the non-constant nature of $f$ that matters.
$2021$ is an arbitrary number, because I could pick as many $p_i,r_i$ as necessary and play the same game.
It is not possible to fix the values of $p_i$ before seeing what the polynomial is. For example, if $f(x)=6x+1$ then $f(n)$ is never going to be divisible by $3$. That's why one can only discover the $p_i$ above abstractly.