La verdadera belleza de Linux se encuentra debajo de la superficie, en el símbolo del sistema
En el escritorio Linux está haciendo grandes progresos. Sin embargo, la verdadera belleza de Linux y Unix como sistemas operativos se encuentra debajo de la superficie, en el símbolo del sistema. nixCraft ha hecho una recopilación de algunas de las mejores aplicaciones para terminales de código abierto.
La mayor parte de las siguientes herramientas están empaquetadas por las principales distribuciones de Linux y se pueden instalar en *BSD o Apple OS X.
1: Siege - Un medidor de estrés de carga HTTP/HTTPS
Siege es una prueba de carga multi-hilo de http o https y herramienta de benchmarking. Esta herramienta permite medir el rendimiento de aplicaciones web bajo estrés. Esta herramienta de prueba se puede utilizar a menudo en servidores web y aplicaciones. Los resultados con esta herramienta son muy satisfactorios. Se puede destacar un solo enlace como ejemplo.com/pagina.php o varias direcciones URL. Al final de cada prueba se obtendrá todos los datos sobre el rendimiento de los servidores web, los datos totales transferidos, la latencia, el tiempo de respuesta del servidor, concurrencia y mucho más.
2: abcde - Un mejor codificador de CD
Por lo general, el proceso de extraer los datos de un CD y a continuación, codificarlos, marcarlos o comentarlos es muy laborioso. abcde está diseñado para automatizar este proceso. Tomará un CD entero y lo convertirá en un formato de audio comprimido - Ogg/Vorbis, MPEG Audio Layer III, Free Lossless Audio Códec (FLAC), Ogg/Speex, MPP/MP+(Musepack) y/o en formatos M4A (AAC). Se hará una consulta CDDB a través de Internet para buscar la unidad de CD o usar una entrada CDDB almacenada localmente.
3: ngrep - Analizador de red grep
Ngrep es un analizador de paquetes de red. Posee la mayor parte de las características comunes del GNU grep, para su aplicación a la capa de red. Ngrep no está relacionado con tcpdump. Es simplemente una herramienta fácil de usar. Puede ejecutar consultas tales como:
## grep all HTTP GET or POST requests from network traffic on eth0 interface ##
sudo ngrep -l -q -d eth0 "^GET |^POST " tcp and port 80
A menudo se utiliza esta herramienta para averiguar los problemas relacionados con la seguridad y localizar otros problemas relacionados con la red y el servidor.
4: pv
El comando pv nos permite ver la evolución de los datos a través de una tubería. Se proporciona la siguiente información:
• Tiempo transcurrido
• Porcentaje completado (con barra de progreso)
• Tasa de rendimiento actual
• Total de datos transferidos
• ETA
Mira cómo instalar y usar comandos pv bajo Linux. O descarga pv visitando esta página.
5: dtrx
dtrx es un acrónimo para "Do The Right Extraction". Es una herramienta para sistemas Unix que tienen todos la molestia de extracción de archivos. Como administrador de sistemas, puedes descargar el código fuente y las tar balls. Esta herramienta ahorra mucho tiempo.
• Sólo tienes que recordar un simple comando para extraer tar, zip, cpio, deb, rpm, gem, 7z, cab, lzh, rar, gz, bz2, lzma, xz, y muchos tipos de archivos ejecutables, como archivos Microsoft Cabinet, archivos InstallShield y auto-extracción de archivos zip. Si no tienen ningún tipo de compresión extra, como archivos tar.bz2, dtrx se encargará también de eso.
• dtrx se asegurará de que los archivos se extraen en sus propios directorios dedicados.
• dtrx se asegura de que puedes leer y escribir todos los archivos que acaba de extraer, dejando el resto de los permisos intactos.
• Extracción recursiva: dtrx puede encontrar archivos dentro del archivo y extraer los mismos.
6: dstat - Versátil herramienta de recursos de estadísticas
Como administrador de sistemas, se depende en gran medida de herramientas como vmstat, iostat y otras parecidas para averiguar problemas en el servidor de resolución. Dstat supera algunas de las limitaciones previstas por vmstat. Añade algunas características adicionales. Permite ver todos los recursos del sistema al instante. Se puede comparar el uso del disco en combinación con las interrupciones desde el controlador de disco duro, o comparar los números de ancho de banda de red directamente con el rendimiento del disco y mucho más.
7: ffmpeg - grabar, convertir, stream y reproducir contenido multimedia
Si tienes un canal de youtube posiblemente necesitarás en algún momento convertir vídeo y audio en diferentes formatos, como el formato web de Youtube HD de streaming. Esta herramienta ahorra un montón de tiempo. A menudo utilizo esta herramienta para la conversión audio/video. Esta es una de las mejores herramientas para la conversión de audio, AVI, MP4, iPod, teléfono móvil, PSP, Quicktime, Rockbox, Web (Flash), WMV y mucho más.
8: mtr - Traceroute+ping en una sola herramienta de diagnóstico de red
El comando mtr combina la funcionalidad de los programas traceroute y ping en una única herramienta de diagnóstico de red. Utiliza mtr para controlar el ancho de banda saliente, latencia y jitter de la red. Una pequeña aplicación para solucionar problemas de red. Si ves un aumento repentino en la pérdida de paquetes o el tiempo de respuesta, a menudo es una indicación de una mala relación o simplemente una sobrecarga.
9: multitail - Comando Tail con esteroides
MultiTail es un programa para el seguimiento de varios archivos de registro (log), que mejora la forma del programa original. Este programa permite ver uno o varios archivos, como el programa original. La diferencia es que crea múltiples ventanas en la consola (con ncurses). A menudo utilizo esta herramienta cuando estoy monitoreando los registros en mi servidor.
10: curl - Transferencia de datos y observación detrás de las escenas
Curl es una herramienta de línea de comandos para transferir datos desde o hacia un servidor, usando uno de los protocolos soportados. El comando está diseñado para funcionar sin interacción del usuario. curl ofrece multitud de trucos útiles como soporte de proxy, la autenticación de usuario, FTP upload, y mucho más. A menudo utilizo el comando curl para:
• Solucionar problemas en los servidores http/ftp/cdn.
• Comprobar o pasar cabeceras HTTP/HTTPS.
• Carga/descarga de archivos mediante el protocolo FTP o cuentas en la nube.
• Depurar las respuestas HTTP y saber exactamente lo que envía un servidor Apache/Nginx/Lighttpd/IISa, sin el uso alguno de aplicaciones o complementos del navegador de terceras partes.
11: netcat - TCP / navaja suiza IP
Netcat o nc es un simple comando de Linux o Unix que lee y escribe datos a través de conexiones de red, utilizando los protocolos TCP o UDP. A menudo utilizo esta herramienta para abrir una red de tuberías para probar la conectividad de red, hacer copias de seguridad, bind a los sockets para manejar las peticiones entrantes/salientes y mucho más. En este ejemplo, le digo a nc que escuche el puerto #3005 y ejecute el comando /usr/bin/w cuando el cliente se conecta y envía los datos al cliente:
$ nc -l -p 3005 -e /usr/bin/w
Desde un sistema diferente tratar de conectar con el puerto #3005:
$ telnet server1.cyberciti.biz.lan 3005
12: nmap - escáner de seguridad de red de ofensivo y defensivo
Nmap es la abreviatura de Network Mapper. Se trata de una herramienta de seguridad de código abierto para la exploración de red, análisis de seguridad y auditoría. Sin embargo, el comando nmap viene con un montón de opciones que pueden hacer que la utilidad sea difícil de seguir para los nuevos usuarios.
Top 30 ejemplos de comandos Nmap para Administradores Sys/Network
13: openssl, herramienta de línea de comandos
El comando openssl se utiliza para diversas funciones criptográficas de la librería crypto de OpenSSL. A menudo utilizo esta herramienta para cifrar archivos, probar/verificar las conexiones SSL y verificar la integridad de los archivos descargados. Además, openssl se puede utilizar para:
• Creación de parámetros clave RSA, DH y DSA
• Creación de certificados X.509, CSR y CRL
• Cálculo de los resúmenes de mensajes
• Manejo de mail S/MIME firmado o cifrado
Los siguientes ejemplos demuestran el poder de comando openssl:
Verificación de la integridad de archivos (función hash criptográfica)
Verificar que un archivo llamado financial-records-fy-2011-12.dbx.aes no ha sido manipulado:
openssl dgst -sha1 -c financial-records-fy-2011-12.dbx.aes
openssl dgst -ripemd160 -c financial-records-fy-2011-12.dbx.aes
openssl dgst -md5 -c financial-records-fy-2011-12.dbx.aes
Ejemplo de salida de la última orden:
MD5(financial-records-fy-2011-12.dbx.aes)= d4:1d:8c:d9:8f:00:b2:04:e9:80:09:98:ec:f8:42:7e
Cifrado y descifrado con Ciphers (archivos)
## encrypt file ##
openssl aes-256-cbc -salt -in financial-records-fy-2011-12.dbx -out financial-records-fy-2011-12.dbx.aes
## decrypt file ##
openssl aes-256-cbc -d -in financial-records-fy-2011-12.dbx.aes -out financial-records-fy-2011-12.dbx
Pruebas de cliente y servidor SSL/TLS
## connect to gmail mail server for testing purpose ##
openssl s_client -connect smtp.gmail.com:995
openssl s_client -connect smtp.gmail.com:995 -CApath /etc/ssl
14: lftp: Un buen cliente de línea de comandos ftp/http/sftp
Este es el mejor y más sofisticado programa cliente de descarga y carga sftp/ftp/http. A menudo utilizo esta herramienta para:
• Reflejar recursivamente el árbol entero del directorio de un servidor ftp
• Acelerar la velocidad de descarga ftp/http
• Localizar marcadores y reanudar descargas.
• Copia de seguridad de archivos en un servidor FTP remoto.
• Las transferencias pueden ser programadas para su ejecución en un momento posterior.
• Puede ser regulado el ancho de banda y se puede configurar las colas de transferencia.
• Lftp tiene la sintaxis de comandos shell y permite ejecutar varios comandos en paralelo en background (&).
• Transferencia de archivos segmentados, que permite más de una conexión para el mismo archivo.
• Y mucho más.
15: irssi - Cliente de IRC
Irssi es un cliente modular de Internet Relay Chat. Es altamente extensible y muy seguro. Al ser un cliente basado en pantalla completa, termcap con muchas características, irssi es fácilmente extensible a través de scripts y módulos. Se suele utilizar este cliente para obtener ayuda acerca de ciertos problemas en salas de IRC o simplemente para pasar el rato con viejos amigos.
16: Algunos más...
• Mutt - Cliente de correo electrónico y que a menudo utilizan mutt para enviar archivos adjuntos de correo electrónico de mis scripts de shell.
• bittorrent - Cliente de torrent desde la línea de comandos.
• rsync - Sincronizar archivos y ahorrar ancho de banda.
• sar - Buen sistema antiguo colector de actividad e informes.
• lsof - Lista de archivos abiertos.
• vim - Siempre el mejor editor de textos.
• wget - La mejor herramienta de descarga.
• mplayer - Mejor consola reproductora de mp3 que puede reproducir cualquier formato de archivo de audio.
• iftop - Mira el uso del ancho de banda de red por host.
• iotop - Descubre qué está haciendo estrés con el aumento de la carga y en los discos duros.