Cada receita de reconexión desatendida acaba na mesma pregunta: onde vive o contrasinal. A resposta popular é a propia acción da tarefa, que tamén é o peor lugar para el. Existen outros dous deseños. Cal encaixa depende de se a máquina pode autenticarse sen unha persoa e de se o servidor acepta certificados.

Que deixa lexible unha acción de tarefa

Os argumentos dunha tarefa programada forman parte da súa definición, non son un valor oculto en tempo de execución. Calquera que poida ler a tarefa, restaurar unha copia de seguridade ou exportar o seu XML ve a cadea exactamente como a escribiches. Durante unha execución, a mesma cadea aparece na lista de procesos. Un axente de monitorización pode copiala nun rexistro que nunca revisas.

schtasks /query /tn "VPN Reconnect" /xml
cmdkey /list

Compárao antes de supoñer o contrario. O primeiro comando imprime a definición completa, incluída a acción e os seus argumentos. O segundo mostra que credenciais ten na caché a conta actual, o que importa para os deseños alternativos de abaixo. Se o contrasinal aparece no XML da tarefa, rotalo é só a metade da reparación, porque a tarefa aínda conserva o valor antigo.

Que compra realmente unha chave precompartida almacenada

Add-VpnConnection -L2tpPsk escribe a chave na entrada da axenda telefónica da conexión en lugar de nunha tarefa. É unha superficie de exposición menor ca unha acción de tarefa. Segue sendo un segredo recuperable, porque un administrador da máquina pode ler a axenda telefónica.

Para unha ligazón de laboratorio entre dúas máquinas que controlas, ese intercambio pode ser aceptable. Para unha credencial de usuario nun punto final compartido, non o é. Chamarlle almacenamento cifrado non cambia quen pode lelo. A axenda telefónica é un ficheiro de configuración. Planifica para a persoa que pode abrila, non só para a persoa que pode iniciar sesión como o usuario.

As credenciais de Winlogon eliminan o segredo e engaden unha dependencia

-UseWinlogonCredential segue outra ruta. A conexión autentícase con MSCHAPv2 contra as credenciais do usuario con sesión iniciada. Non se almacena nada extra para esa conta.

A dependencia que engade é importante. Debe haber un inicio de sesión interactivo do que tomar prestado, o que descarta unha conta de servizo e unha tarefa previa ao inicio de sesión. A conexión tamén herda todo o que as credenciais dese usuario poden acadar no servidor. Le o conmutador como unha declaración sobre de onde veñen as credenciais, non como un axuste de seguridade. Cambia a fonte, e nada sobre como o servidor autoriza a sesión despois.

A autenticación con certificados escala porque non se almacena nada

Onde o servidor admite EAP-TLS, un certificado de máquina elimina por completo o segredo compartido, e a revocación ocorre na capa de certificado. Unha tarefa que se executa como SYSTEM pode presentar ese certificado sen un inicio de sesión interactivo. Confirma que o servidor acepta a autenticación con certificados antes de construír sobre ela. Un deseño que depende dun método non admitido é un plan, non unha solución. Despois decide onde vive a chave privada: o almacén da máquina para a identidade dun dispositivo, o almacén do usuario para unha persoa.

Onde non se poden evitar un nome de usuario e un contrasinal, gárdaos en Credential Manager limitados á propia conta da tarefa. Deixa que o cliente os lea de aí en lugar dun argumento. Un segredo que a tarefa pode obter sen imprimilo é un problema menor ca un escrito na súa definición.

Revisa os artefactos antes da próxima rotación

Mira o que se almacena e non o que pretendías. Comproba a axenda telefónica por usuario, a copia para todos os usuarios, o XML da tarefa e calquera script que chame o comando de marcación. Logo confirma que o certificado ou a credencial na caché está limitada á conta que usa a tarefa, porque unha credencial gardada para a túa conta interactiva é invisible para SYSTEM.

Anota o método de autenticación e a conta nas notas da propia tarefa. A próxima persoa que cambie a política do servidor necesita saber que deseño está en xogo. Esa resposta non se ve só polo comportamento de reconexión. Escríbea onde a próxima rotación mirará primeiro.

Artigos relacionados