ssh_scan verifica la configuración y la política de su servidor SSH en Linux

ssh_scan verifica la configuración y la política de su servidor SSH en Linux

ssh_scan es un escáner de configuración y política de SSH de prototipo fácil de usar para servidores Linux y UNIX, inspirado en la Guía de seguridad de Mozilla OpenSSH, que proporciona una recomendación de política de línea de base razonable para parámetros de configuración SSH como cifrados, Mac y Kexalgos y mucho más más.

Tiene algunos de los siguientes beneficios:

  • Tiene dependencias mínimas, ssh_scan solo emplea ruby ​​nativo y bindata para hacer su trabajo, sin dependencias pesadas.
  • Es portátil, puede usar ssh_scan en otro proyecto o para la automatización de tareas.
  • Es fácil de usar, simplemente apuntarlo en un servicio SSH y obtener un informe JSON de lo que admite y su estado de política.
  • También es configurable, puede crear sus propias políticas personalizadas que se ajusten a sus requisitos de política específicos.

Leer sugerido: Cómo instalar y configurar el servidor OpenSSH en Linux

Cómo instalar SSH_Scan en Linux

Hay tres formas en que puede instalar ssh_scan y estan:

Para instalar y ejecutar como gema, escriba:

----------- En Debian/Ubuntu ----------- $ sudo apt-get install ruby ​​gem $ sudo gem instalación ssh_scan ----------- En CentOS/RHEL ----------- # yum install ruby ​​rubygem # gem install ssh_scan 

Para correr desde un contenedor Docker, escriba:

# Docker Pull Mozilla/SSH_Scan # Docker Run -it Mozilla/SSH_Scan/App/bin/SSH_Scan -t Github.comunicarse 

Para instalar y ejecutar desde la fuente, escriba:

# clon git https: // github.com/mozilla/ssh_scan.git # cd ssh_scan # gpg2 --keyserver hkp: // teclas.gnupg.NET -RECV -KEYS 409B6B1796C275462A1703113804BB82D39DC0E3 # curl -ssl https: // get.RVM.IO | bash -s estable # rvm install 2.3.1 # rvm usa 2.3.1 # Instalación de gemas Bundler # Bundle Instalar # ./bin/ssh_scan 

Cómo usar SSH_Scan en Linux

La sintaxis para usar ssh_scan es la siguiente:

$ ssh_scan -t ip -address $ ssh_scan -t servidor -hostname 

Por ejemplo, para escanear las configuraciones de SSH y la política del servidor 92.168.43.198, ingresar:

$ ssh_scan -t 192.168.43.198 

Tenga en cuenta que también puede pasar un [IP/Range/HostName] al -T Opción como se muestra en las opciones a continuación:

$ ssh_scan -t 192.168.43.198,200,205 $ ssh_scan -t prueba.tecmenta.lan 
Salida de muestra
I, [2017-05-09T10: 36: 17.913644 #7145] Información -: Estás usando la última versión de ssh_scan 0.0.19 ["ssh_scan_version": "0.0.19 "," IP ":" 192.168.43.198 "," Port ": 22," Server_Banner ":" SSH-2.0-Openssh_7.2p2 Ubuntu-4ubuntu2.1 "," ssh_version ": 2.0, "OS": "Ubuntu", "OS_CPE": "O: Canonical: Ubuntu: 16.04 "," SSH_LIB ":" OpenSSH "," SSH_LIB_CPE ":" A: OpenSSH: OpenSSH: 7.2p2 "," Cookie ":" 68B17BCCA652EEAF153ED188777770A38 "," KEY_ALGORITHMS ": [" [Correo electrónico protegido] "," ECDH-SHA2-NISTP256 "," ECDH-SHA2-NISTP384 "," ECDH-SHA2-NISTP521 "," DiFfie- Hellman-Group-Exchange-Sha256 "," Diffie-Hellman-Group14-Sha1 "]," server_host_key_algorithms ": [" SSH-RSA "," RSA-SHA2-512 "," RSA-SHA2-256 "," ECDSAA- SHA2-NISTP256 "," SSH-ED25519 "]," CiCrryption_Algorithms_client_to_server ": [" [Correo electrónico protegido] "," AES128-CTR "," AES192-CTR "," AES256-CTR "," [Correo electrónico protegido] ",", " [Correo electrónico protegido] "]," CiCrryption_Algorithms_server_to_client ": [" [Correo electrónico protegido] "," AES128-CTR "," AES192-CTR "," AES256-CTR "," [Correo electrónico protegido] "," [Correo electrónico protegido] "" ], "Mac_algorithms_client_to_server": ["[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", ",", ",", " [correo electrónico protegido] "," HMAC-SHA2-256 "," HMAC-SHA2-512 "," HMAC-SHA1 "],"Mac_algorithms_server_to_client": ["[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", "[correo electrónico protegido]", ", [correo electrónico protegido] "," HMAC-SHA2-256 "," HMAC-SHA2-512 "," HMAC-SHA1 "]," Compression_Algorithms_client_to_server ": [" Ninguno "," [Correo electrónico protegido] "]," Compression_algorithms_server_to_client ": [" "" " Ninguno "," [Correo electrónico protegido] "]," Idiomas_client_to_server ": []," Languages_server_to_client ": []," Nombre de host ":" TecMint "," Auth_methods ": [" Publickey "," Contraseña "]," Huellas dactilares " : "rsa": "conocido_bad": "falso", "md5": "0e: d0: d7: 11: f0: 9b: f8: 33: 9c: ab: 26: 77: e5: 66: 9e: F4 "," Sha1 ":" Fc: 8d: D5: A1: BF: 52: 48: A6: 7e: F9: A6: 2f: AF: CA: E2: F0: 3a: 9a: B7: Fa ",", " Sha256 ":" FF: 00: B4: A4: 40: 05: 19: 27: 7c: 33: AA: DB: A6: 96: 32: 88: 8e: BF: 05: A1: 81: C0: A4: A8: 16: 01: 01: 0b: 20: 37: 81: 11 "," Start_time ":" 2017-05-09 10:36:17 +0300 "," End_time ":" 2017-05-09 10:36:18 +0300 ","scan_duration_seconds": 0.221573169, "duplicate_host_key_ips": [], "cumplimiento": "Política": "Mozilla Modern", "Cumplir": False, "Recomendaciones": ["Eliminar estos algos de intercambio de claves: Diffie-Hellman-Group14-Sha1", ", "Elimine estos algos MAC: [correo electrónico protegido], [correo electrónico protegido], [correo electrónico protegido], hmac-sha1", "eliminar estos métodos de autenticación: contraseña"], "referencias": ["https: // wiki.Mozilla.org/Security/Guía/OpenSSH "]] 

Puedes usar -pag Para especificar un puerto diferente, -L para habilitar el registrador y -V Para definir el nivel de verbosidad como se muestra a continuación:

$ ssh_scan -t 192.168.43.198 -P 22222 -L SSH -Scan.Log -V Info 

Además, use un archivo de política personalizado (el valor predeterminado es Mozilla Modern) con el -PAG o --Política [archivo] al igual que:

$ ssh_scan -t 192.168.43.198 -L ssh -scan.Log -V Info -p/Path/TO/Custom/Policy/File 

Escriba esto para ver todas las opciones de uso de SSH_Scan y más ejemplos:

$ ssh_scan -h 
Salida de muestra
ssh_scan v0.0.17 (https: // github.com/mozilla/ssh_scan) Uso: ssh_scan [opciones] -t, -target [ip/range/hostname] ip/ranges/hostname a scan -f, - -filePath] ruta del archivo del archivo que contiene IP/rango /Hostnames para escanear -t, -tiempo de tiempo de tiempo [segundos] por conexión después de lo cual ssh_scan cede en el host -l, --logger [ruta del archivo de registro] Habilitar logger -o, --from_json [filepath] para leer JSON Salida de -o, el archivo --output [filepath] para escribir la salida JSON a -p, --port [puerto] puerto (predeterminado: 22) -p, - -colicy [archivo] archivo de política personalizada (predeterminado: mozilla moderno) -Threads [Número] Número de subprocesos de trabajadores (predeterminado: 5)-Fingerprint-DB [Archivo] Ubicación del archivo de la base de datos de huellas dactilares (predeterminado: ./huellas digitales.DB) --Press -Update -Status no verifique las actualizaciones -u, --unit -test [archivo] arrojar códigos de salida apropiados basados ​​en el estado de cumplimiento -v [std_logging_level], --verbosity -v, --version visualion just just Información de la versión -h, -Help Mostrar este mensaje Ejemplos: SSH_SCAN -T 192.168.1.1 servidor ssh_scan -t.ejemplo.com ssh_scan -t :: 1 ssh_scan -t :: 1 -t 5 ssh_scan -f hosts.txt ssh_scan -o salida.JSON SSH_SCAN -O SALIDA.json -o rescan_output.json ssh_scan -t 192.168.1.1 -P 22222 ssh_scan -t 192.168.1.1 -P 22222 -L SALIDA.Log -V Info ssh_scan -t 192.168.1.1 -P Custom_Policy.yml ssh_scan -t 192.168.1.1 -Test de unidad -P Custom_Policy.YML 

Echa un vistazo a algunos artilces útiles en el servidor SSH:

  1. Inicio de sesión sin contraseña de SSH usando SSH Keygen en 5 sencillos pasos
  2. 5 mejores prácticas para asegurar el servidor SSH
  3. Restringir el acceso de los usuarios de SSH a cierto directorio utilizando la cárcel de chrooted
  4. Cómo configurar las conexiones SSH personalizadas para simplificar el acceso remoto

Para más detalles, visite el repositorio de GitHub SSH_Scan: https: // github.com/mozilla/ssh_scan

En este artículo, le mostramos cómo configurar y usar SSH_Scan en Linux. ¿Sabes de alguna herramienta similar por ahí?? Háganos saber a través del formulario de comentarios a continuación, incluidos cualquier otro pensamiento sobre esta guía.