Given two states $\rho, \sigma$, consider their spectral decomposition, $$\rho = \sum\limits_{j=1}^{d} p_{j} | \psi_{j} \rangle \langle \psi_{j} | , \sigma = \sum\limits_{j=1}^{d} q_{j} | \phi_{j} \rangle \langle \phi_{j} |. $$ I'm assuming, for simplicity, that $\rho, \sigma$ are have non-degenerate eigenvalues -- this is not a strict requirement for the argument that follows but does simplify the analysis. Then, the problem of $\rho \mapsto \sigma$ breaks down into two steps: (i) transforming their eigenvectors and (ii) transforming their eigenvalues.
To transform their eigenvectors, consider the following unitary, $U = \sum\limits_{j=1}^{d} | \phi_{j} \rangle \langle \psi_{j} | $. It is easy to check that the action of the unitary channel is to transform the eigenvectors, $$\mathcal{U}( | \psi_{j} \rangle \langle \psi_{j} | ) := U ( | \psi_{j} \rangle \langle \psi_{j} | ) U^{\dagger} = | \phi_{j} \rangle \langle \phi_{j} | ~~\forall j.$$
Therefore, $\mathcal{U}(\rho) = \sum\limits_{j=1}^{d} p_{j} | \phi_{j} \rangle \langle \phi_{j} | $, that is, the eigenvectors have been transformed. More generally, any time one wants to transform an orthonormal set of states $\{ |\psi_{j} \rangle \} \mapsto \{ |\phi_{j} \rangle \}$, we construct a unitary of the form above.
To transform the eigenvalues, first note that unitary operators cannot change the spectrum of a state, therefore, we need a non-unitary channel. Also, with the action of $\mathcal{U}$ above, both $\mathcal{U}(\rho)$ and $\sigma$ are in the same eigenbasis, so transforming the eigenvalues has a "classical" flavor to it. I can't think of an answer for the most general case (off the top of my head), but if $\{ p_{j} \}$ is ``less disordered'' than $\{ q_{j} \}$ (in the sense of vector majorization), then, one can show that
$$ \operatorname{spec}(\rho) \succ \operatorname{spec}(\sigma) \Longleftrightarrow \exists \mathcal{E}(\rho)=\sigma, $$
where, $\vec{v} \succ \vec{w}$ is vector majorization, $\mathcal{E}$ is a unital CPTP map, and $\text{spec}(\rho)$ the spectrum of $\rho$. A proof of this can be found in Nielsen's (other!) book (warning: the book is in a .ps format).
Therefore, given two states, $\rho, \sigma$, if $\operatorname{spec}(\rho) \succ \operatorname{spec}(\sigma)$ then this transformation can be achieved by using a unitary channel $\mathcal{U}$ to transform the eigenvectors and a non-unitary channel $\mathcal{E}$ to transform the eigenvalues; composing these two, we have, $\mathcal{E} \circ \mathcal{U}$ is the channel that does the transformation.
Edit: For $\rho,\sigma$ pure, the above construction tells us that we only need a unitary transformation to connect them, as expected.