Como dizer ao systemd para iniciar o sshd mais tarde na seqüência de inicialização?

5

Meu arquivo sshd_config especifica que ele deve escutar alguns endereços IP específicos em vez de todos os endereços IP. O problema é que uma dessas NICs não aparece até mais tarde na seqüência de inicialização. Então o sshd foi iniciado e, como o endereço IP não estava disponível, nunca escuta esse endereço IP.

ListenAddress 127.0.0.1
ListenAddress 10.0.0.10

Existe uma maneira de dizer ao sshd para re-varrer os endereços IP disponíveis periodicamente ou existe uma maneira de dizer ao systemd para iniciar o sshd mais tarde?

    
por TomOnTime 22.05.2015 / 22:15

1 resposta

5

Os serviços lançados pelo systemd na inicialização são ordenados por dependências. Para dizer ao systemd para iniciar o sshd.service unidade mais tarde , você tem que dizer qual a unidade que deve esperar antes de iniciar o serviço.

Uma vez que você encontrou a unidade responsável pela configuração da rede (provavelmente network.service no CentOS 7), você pode criar um arquivo de configuração drop-in (o nome deve ser something .conf ) na pasta /etc/systemd/system/sshd.service.d/ (pode não existir inicialmente) com o seguinte conteúdo:

[Unit]
After=network.service
Requires=network.service

Isso informará ao systemd que ele precisa aguardar a inicialização do serviço network.service para concluir antes de lançar sshd.service .

Se você estiver usando systemd-networkd , você pode usar systemd-networkd-wait-online para aguardar a configuração de uma interface específica usando --interface=eth0 .

    
por 14.08.2015 / 19:59