Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
sshconfig-lint — Линтер на основе правил для конфигурационных файлов клиента OpenSSH, который обнаруживает дублирующиеся хосты, отсутствующие файлы identity, слабые алгоритмы, проблемы с порядком подстановочных знаков и опасные настройки, с выводом в формате JSON и кодами возврата, удобными для CI. | Kitploit
Инструменты/GitHubGitHub/noah4ever/sshconfig-lint
Утилиты общего назначенияСтатический анализАнализ КодаАудит конфигурацииСетевая безопасностьDevSecOps
GitHubnoah4ever/sshconfig-lint

sshconfig-lint

Репозиторий
1616125 дней назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →

Описание

Линтер на основе правил для конфигурационных файлов клиента OpenSSH, который обнаруживает дублирующиеся хосты, отсутствующие файлы identity, слабые алгоритмы, проблемы с порядком подстановочных знаков и опасные настройки, с выводом в формате JSON и кодами возврата, удобными для CI.

Поделиться

sshconfig-lint

Tests crates.io License: MIT

Один движок для всех мест, где меняется ваш SSH-конфиг.

sshconfig-lint находит семантические ошибки в клиентских конфигах OpenSSH: дублирующиеся хосты, неработающие пути к ключам, небезопасные опции, слабые алгоритмы, порядок wildcard-шаблонов и запутанные цепочки Include. Используйте одни и те же коды правил локально, в Git-хуках, GitHub Actions и редакторах.

Попробуйте приватную браузерную песочницу · Изучайте на интерактивных примерах · Прочитайте все правила

Браузерная проверка выполняется на вашем устройстве. Содержимое конфигов не загружается, телеметрия не собирается.

Быстрый старт

# check ~/.ssh/config
sshconfig-lint

# check one or more repository configs
sshconfig-lint .ssh/config infrastructure/ssh_config

# fail on warnings and errors
sshconfig-lint .ssh/config --strict

Установка

Homebrew

brew tap Noah4ever/tap
brew install sshconfig-lint

Cargo

cargo install sshconfig-lint

Arch Linux

yay -S sshconfig-lint-bin

На странице релизов доступны проверенные бинарные файлы для Linux, macOS и Windows. Установщик для удобства проверяет контрольную сумму релиза перед установкой:

curl -fsSL https://raw.githubusercontent.com/Noah4ever/sshconfig-lint/main/install.sh | bash

Задайте VERSION=v0.5.0 или INSTALL_DIR=~/.local/bin, чтобы переопределить значения по умолчанию.

GitHub Actions

Официальный Action доступен в GitHub Marketplace.

name: SSH config
on: [push, pull_request]

jobs:
  lint:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: Noah4ever/[email protected]
        with:
          paths: |
            .ssh/config
            infrastructure/ssh_config
          strict: true

Находки отображаются как аннотации на конкретном файле и строке. Action скачивает релиз, соответствующий его тегу, и проверяет SHA256SUMS перед выполнением.

Для репозиториев с включённым GitHub Code Scanning SARIF можно загрузить отдельно:

- run: sshconfig-lint .ssh/config --format sarif > sshconfig-lint.sarif
- uses: github/codeql-action/upload-sarif@v3
  with:
    sarif_file: sshconfig-lint.sarif

Pre-Commit

repos:
  - repo: https://github.com/Noah4ever/sshconfig-lint
    rev: v1.0.0
    hooks:
      - id: sshconfig-lint-strict

Используйте id: sshconfig-lint, если предупреждения не должны блокировать коммит. Переопределите files: в вашем проекте, если конфиги используют другое соглашение об именовании.

Редакторы

VS Code

Установите расширение VS Code из Marketplace или выполните:

code --install-extension NoahThiering.sshconfig-lint

Расширение запускает sshconfig-lint lsp, один раз скачивает соответствующий проверенный бинарный файл, а затем работает офлайн. Оно распознаёт .ssh/config, ssh_config и dot_ssh/config от chezmoi. Телеметрия не собирается. Исходный код доступен в editors/vscode.

Neovim

Протестированный пример editors/neovim использует встроенный LSP-клиент Neovim. Скопируйте его небольшой Lua-модуль в свою конфигурацию и запустите его с помощью:

require("sshconfig_lint").setup()

Он использует тот же сервер sshconfig-lint lsp, что и VS Code, и поддерживает пользовательский путь к бинарному файлу.

Любой редактор с поддержкой LSP может запустить:

sshconfig-lint lsp

Языковой сервер v0.5 публикует диагностику по всей строке при открытии, изменении и сохранении. Несохранённые буферы выполняют только правила, основанные на содержимом; сохранённые файлы дополнительно разрешают Include и пути файловой системы. Находки из вложенных Include привязываются к включённому файлу и очищаются вместе с корневым документом.

Форматы вывода

sshconfig-lint --format text
sshconfig-lint --format json
sshconfig-lint --format github
sshconfig-lint --format sarif

Находки в JSON содержат severity, code, rule, line, file, message, hint и documentation. Коды правил и коды выхода — это стабильные интерфейсы автоматизации.

ВыходЗначение
0Нет находок уровня ошибки и нет предупреждений при --strict
1Как минимум одна блокирующая находка
2Как минимум один запрошенный конфиг не удалось прочитать

Правила

Скачать инструмент