There's nothing in the Constutiton that expressly forbids secession, and the fact that the Union forced six Southern states to write in a clause into their state constitutions renouncing secession could be interpreted as a sign that the feds recognized it as a continuing political option.
Shit, look at Maine. I think that more secession has happened there over the past 200 years than in the rest of North America.
Morally? No, it wasn't. Regardless of how sympathizers try to dress it up with the supposed nobility of states' rights, it was about Southern paranoia about slavery.