$x_1$ and $y_1$ make the problem complicate. First, we do a translation to make $x_1, y_1$ move to origin in $x'-y'$ coordinate system.
Now, the parabola touch $y=kx$ at origin and pass $(x'_0,y'_0)$ where $x'_0=x_2-x_1, y'_0=y_2-y_1$.
Then we make a rotation to $x''-y''$ coordinate system. by a rotation of $\theta$.
$x'=x''\cos\theta + y''\sin\theta$
$y'=-x''\sin\theta + y''\cos\theta$ (Hope I did not rotation at wrong direction).
$(x'_0,y'_0)$ now rotated to $(x''_0,y''_0)$.
Then the parabola touch x-axis at origin.
The parabola is $y''=ax''^2$. Put $(x''_0,y''_0)$ into the equation, you can solve for $a$ and fix the parameter of parabola equation in $x''-y''$ coordinate. Then you can work back to a equation in $x-y$ coordinate. The equation could be complicated so you can write it in terms of $a$ since you already have the expression of $a$.
Method II:
Start from general equation of parabola:
$\frac{(ax+by+c)^2}{a^2+b^2}=(x-x_f)^2+(y-y_f)^2$
Assume the signed distance between focus $(x_f,y_f)$ to $y=kx$ is $d$. Then you can write down the equation of directrix $ax+by+c$ and focus $(x_f,y_f)$ in term of $d$. Then put $(x_2,y_2)$ into the equation, you can find $d$ and then fix all parameters $a,b,c,x_f,y_f$.