Hay unas 4 personas que conocen mi contraseña de root. Y alguien eliminó mi directorio de código.
Tenemos un sistema único en el que cada uno tiene su propio directorio de código base y todos ellos trabajan en este sistema y trabajan en él.
Traté de buscar en la historia ~ / .bash_history. muestra que se ejecutó el comando rm -rf pero no sé quién inició sesión como root y lo eliminó. También he probado el comando list. Pero desafortunadamente, se registraron 3 personas en ese momento y cualquiera de ellos pudo haberlo hecho. información contable también no ayudó. Existe alguna manera de averiguarlo?
De lo contrario, ¿cómo puedo escribir un script que pueda ejecutar en segundo plano que capture todos los comandos que se emiten desde una dirección IP (sesiones SSH) y en qué momento?
git
) para su código fuente.Respuestas:
El problema con la historia.
history
o comandos similares es, no te muestran la hora en que se ingresaron los comandos.last
le mostrará quién inició sesión o si todavía está conectado, pero si tres personas conocen la contraseña de root, todavía es difícil decirles que no están listos.Un script simple sería enviar un correo cada vez que alguien inicia sesión. Coloque este script en .bash_profile, si está usando bash. Pero tan pronto como alguien se da cuenta de este script y tiene acceso a la raíz, no hay nada que le impida cambiarlo o incluso enviar mensajes falsos.
Para el futuro, sugeriría usar
sudo
( hombre sudo ). Los usuarios iniciarán sesión con su cuenta personal y si necesitan permiso de root para ciertos comandos, deben hacerlo a través de sudo y todo se registrará.fuente
Incluso si escribes un script para hacer eso y uno de los otros tres tiene permisos de root, lo que es para evitar que editen el archivo y cubran su crimen.
Entonces, en resumen, si no está seguro de la competencia de uno o más de los otros, elimine su acceso de root (es decir, cambie la contraseña y no le diga a esa persona).
También es una buena idea usar el acceso de root solo cuando sea absolutamente necesario. También use algo como SVN y un mecanismo de respaldo para que, como máximo, pierda un día de trabajo (o menos)
fuente