Parece haver um erro aqui, porque:
sed -i "s/443 ssl default_server/443 ssl http2 default_server/" $s_a/$domain.conf
funcionará bem; ele substituirá a primeira ocorrência “443 ssl default_server” por “443 ssl http2 default_server” em todas as linhas de $s_a/$domain.conf .
-l só é relevante com o comando l .
sed processa todas as linhas, a menos que você diga que não, por exemplo, parando cedo. A opção g para o comando s afeta apenas como várias ocorrências do termo de pesquisa são processadas por linha : sem g , somente a primeira ocorrência é substituída em qualquer linha, enquanto com g , todas as ocorrências são substituídas. Em ambos os casos, a substituição é aplicada a todas as linhas.