Inicia sesión en un sistema UNIX o Linux desconocido (como root). ¿Qué comandos ejecutas para orientarte y descubrir en qué tipo de sistema estás? ¿Cómo saber qué tipo de hardware está en uso, qué tipo de sistema operativo se está ejecutando y cuál es la situación actual en lo que respecta a permisos y seguridad?
¿Cuál es el primer y segundo comando que escribe?
linux
shell
command-line
root
Alejandro
fuente
fuente
uname -a
entoncesapropos whatever
es tu amigo.nmap -A -T4 localhost
también podría darle información útilnmap
martillo delocalhost
repente parecía un clavo. Pero luego me di cuenta de que en realidad da información interesante, así que lo dejé como una sugerencia semi-seria.Respuestas:
¡Una pregunta de doble uso! ¡Un arqueólogo de software o un hacker malvado podrían usar las respuestas a esta pregunta! Ahora, que soy yo?
Siempre solía usar
ps -ef
versusps -augxww
para descubrir en qué estaba. Los cuadros de Linux y System V solían gustar "-ef" y error en "-augxww", viceversa para BSD y máquinas SunOS antiguas. La salida deps
puede hacerle saber mucho también.Si puede iniciar sesión como root, y es una máquina Linux, debe hacerlo
lsusb
ylspci
, eso le dará el 80% del camino para saber cuál es la situación del hardware.dmesg | more
puede ayudarlo a comprender cualquier problema actual en casi cualquier cosa.Está comenzando a eliminarse gradualmente, pero hacerlo
ifconfig -a
generalmente puede informarle mucho sobre las interfaces de red y las redes. Ejecutarmii-tool
y / oethtool
en las interfaces que ve en laifconfig
salida que se parece a Ethernet cableada también puede brindarle información.Runnin
ip route
onetstat -r
puede ser informativo sobre el enrutamiento del Protocolo de Internet, y tal vez algo sobre las interfaces de red en uso.Una
mount
invocación puede informarle sobre los discos y cómo están montados.En ejecución
uptime
, y luegolast | more
puede decirle algo sobre el estado actual de mantenimiento. Los tiempos de funcionamiento de más de 100 días probablemente significan "es hora de cambiar el aceite y los fluidos", metafóricamente hablando. Correrwho
es tambiénMirando
/etc/resolv.conf
y/etc/hosts
podemos informarle sobre la configuración de DNS de esa máquina. Tal vez haganslookup google.com
odig bing.com
para ver si DNS es principalmente funcional.Siempre vale la pena ver qué errores ("comando no encontrado") y qué variantes de comandos ("ps -ef" vs "ps augxww") funcionan para determinar qué variante de Unix, Linux o BSD acaba de terminar.
La presencia o ausencia de un compilador de C, y dónde vive es importante. Hazlo
which cc
o mejor,which -a cc
para encontrarlos.fuente
netstat -tulpanw
una mayor producción, pero en realidad es cuestión de gustos.lshw
bajo Linux.mount
es desordenado,findmnt
está muy limpio en su lugar.cat /etc/*release*
es un buen comando para obtener una descripción general de qué distribución se está ejecutando.fuente
http://bhami.com/rosetta.html puede ser útil para revisar, de lo contrario, generalmente busco en
/etc
(cuentas, material de inicio, sugerencias de sabor del sistema operativo, etc.)crontab -l
y busco en laps
lista cosas para aprender.También "as root" es muy aterrador, ya que tuve que arreglar sistemas en los que un administrador de Linux que realizaba una investigación de este tipo configuraba todos los nombres de host de Solaris
-f
.También
df
es un comando peligroso, una excelente manera de oh whoops colgado en el bloqueo de E / S. Así que nunca ejecute eso hasta que al menos haya investigado las monturas, o sepa que puede abrir otra sesión de alguna manera.Utilizar comandos muy simples (
uname
,cd /etc; ls
,cat
,$PAGER
) hasta que averiguar cuál es el anfitrión, y si no está familiarizado con ella, comprobar una roseta o siempre lea la página del manual antes de asumir algún comando o una bandera a un comando hace lo que hace en Sistemas más populares.fuente
df
peligroso? ¿Hay sistemas en los que hace algo más que mostrar el uso del sistema de archivos?df
bloquea, entonces simplemente CTRL-Z ykill -9
él. También me he encontrado con ese problema y eso siempre me ha funcionado. Además, idealmente sus monturas no deben colgarse. Tampoco creo que mucha gente piense en los programas colgados como "peligrosos", por lo que creo que terdon estaba confundido.dmidecode
ylspci
generalmente le dará una buena idea de cuál es el hardware que se ejecuta en el sistema. Si este es un servidor que generalmente se ejecutanetstat -tlpn
, revelará el propósito del servidor.df -hP
es un buen comando para verificar el almacenamiento actual en el sistema.lsb_release -a
debería hacerte saber en qué distribución estás:La ejecución
last
debería hacerle saber quién usa el sistema. Suponiendo que haya accedido a este servidor legítimamente, a menudo puede pedirle a una de las personas que inician sesión para obtener más información al respecto.Para verificaciones de seguridad neutrales del proveedor: a menudo el firewall tendrá datos de configuración únicos, por lo que
iptables -nvL
es útil ejecutar También debe consultar los archivos de configuración de pam de su distribución para ver si solo está utilizando usuarios locales o si está configurado para usar ldap / kerberos / winbind / sssd / lo que sea.También puede inspeccionar la configuración de los servicios que aparecen en su
netstat -tlpn
. Por ejemplo, si ve Apache, puede mirar/etc/http/conf/httpd.conf
(en RHEL,/etc/apache2
en Ubuntu) e intentar ver qué sitios web se están ejecutando. Alternativamente, puede hacer unaapachectl -S
para obtener una lista de todos los hosts virtuales configurados. De alguna manera se aviva, así que todo lo que puedo hacer es ofrecer apache como ejemplo y solo decir que verifique la configuración del demonio si es otra cosa.En RHEL también verificaría
rpm -qa --last | head
para ver cuándo fue la última vez que hicieron actualizaciones del sistema. También verificaría si SELinux está habilitado a través degetenforce
fuente
Algunas otras ideas:
/proc
sistema de archivos puede indicar si estás en Mac , FreeBSD o Linux.ls /usr/bin | grep 'apt\|yum\|pacman'
netstat -tulpan
. El podría sersshd
, servidor webftp
,;fuente
yum
paquete. ¿Cómo indicaría la presencia de un servidor ssh el sistema? AFAIK puedes encontrarsshd
en casi cualquier cosa.