1. Судно не может открыть огонь, т.к. по определению судно - это гражданское
транспортное средство. Под термином судно подразумевается любое транспортное средство для перевозки пассажиров или грузов через одно из традиционно не приспособленных для человека пространств — то есть любое, кроме наземного. Другое дело - корабль. Он всегда военный.
2. Нельзя открыть огонь "на", можно только "по" чему-либо. А вот "на поражение" открыть огонь как раз можно.