1. Establecer los permisos del perfil de derechos de usuario
Ejecute los siguientes 5 comandos:
chown root:root /etc/passwd /etc/shadow /etc/group /etc/gshadow
chmod 0644 /etc/group
chmod 0644 /etc/passwd
chmod 0400 /etc/shadow
chmod 0400 /etc/gshadow
anotación:
/etc/group Archivo de información del grupo de usuarios
/etc/passwd archivo de información de usuario
/etc/archivo de contraseña de usuario shadow
/etc/gshadow archivo de contraseña de grupo
2. Prohibir que los usuarios de contraseñas vacías de SSH inicien sesión
Desmarque /etc/ssh/sshd_configPermitEmptyPasswords noSímbolo de comentario#
anotación:
/etc/ssh/sshd_config archivo de configuración de inicio de sesión remoto ssh
PermitEmptyPasswords no Significado del parámetro: no se permite ninguna contraseña vacía para iniciar sesión
3. Establecer el tiempo de caducidad de la contraseña
Utilice métodos de inicio de sesión sin contraseña, como un par de claves, ignore este elemento. En /etc/login.defs agregarPASS_MAX_DAYSEl parámetro se establece entre 60 y 180, como PASS_MAX_DAYS 90. Debe ejecutar el comando al mismo tiempo para establecer el tiempo de vencimiento de la contraseña raíz:cambio --maxdays 90 raíz
anotación:
Para usuarios recién agregados en Linux, el tiempo de vencimiento de la contraseña de usuario se extrae de PASS_MAX_DAYS en /etc/login.defs El valor predeterminado es 99999 para sistemas comunes
y 90 para algunos sistemas operativos de seguridad. Cambie aquí solo para cambiar el tiempo de caducidad de la contraseña predeterminada del usuario recién creado, y el tiempo de caducidad de la contraseña del usuario existente permanecerá sin cambios.
chage --maxdays 90 root Establece el período de validez de la contraseña de la cuenta raíz en 90 días
o: cambio -M 90 raíz
-M: El número máximo de días que la contraseña permanecerá válida
-m: El número mínimo de días que se puede cambiar la contraseña. Un tiempo de cero significa que la contraseña se puede cambiar en cualquier momento.
4. Establecer el intervalo mínimo para la modificación de la contraseña
En /etc/login.defs agregarPASS_MIN_DAYSEl parámetro se establece entre 5 y 14, y se recomienda que sea 7:
PASS_MIN_DAYS 7 Debe ejecutar el comando al mismo tiempo para configurarlo para el usuario root:
cambio --mindays 7 raíz
anotación:
PASS_MAX_DAYS 90 #Días máximos de caducidad de la contraseña
PASS_MIN_DAYS 80 días de caducidad mínima de #Password
cambio --mindays 7 raízEstablezca la contraseña de root al menos siete días para cambiar
o cambiar -m 7 raíz
5. Asegúrese de que SSH LogLevel esté configurado en INFO
Edite el archivo /etc/ssh/sshd_config para establecer los parámetros de la siguiente manera (sin comentar):
INFORMACIÓN de nivel de registro
anotación:
LogLevel INFO: establezca el nivel de registro de mensajes de registro sshd en INFO
6. SSHD aplica el protocolo de seguridad V2
Edite el archivo /etc/ssh/sshd_config para establecer los parámetros de la siguiente manera:Protocolo 2
anotación:
Protocolo 2: Establezca la versión del protocolo en SSH2, la primera versión de centos7 ha sido rechazada por defecto, porque SSH1 tiene lagunas y defectos.
7. Establezca el tiempo de espera de inactividad de SSH y el tiempo de salida
Edite /etc/ssh/sshd_config y configureClientAliveIntervalAjuste de 300 a 900, es decir, de 5 a 15 minutos,ClientAliveCountMaxEstablecer en 0.
ClientAliveInterval 900
ClientAliveCountMax 0
anotación:
ClientAliveInterval 900 significa enviar un "paquete vacío" al cliente cada 300 segundos para mantener la conexión con el cliente. Esta opción solo está disponible para la versión 2 del protocolo.
ClientAliveCountMax 0 indica cuántos "paquetes vacíos" se envían en total antes de desconectarlos
Las dos líneas anteriores de configuración significan: el intervalo de tiempo de inactividad establecido es de 900 segundos, la sesión de ssh finalizará e incluso el envío no mantendrá los paquetes activos