Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
sshconfig-lint — مدقق قائم على القواعد لملفات تكوين عميل OpenSSH يكتشف الـhosts المكررة، ملفات الهوية المفقودة، الخوارزميات الضعيفة، مشاكل ترتيب wildcard، والإعدادات الخطرة مع إخراج JSON ورموز خروج مناسبة لـ CI. | Kitploit
أدوات/GitHubGitHub/noah4ever/sshconfig-lint
أدوات عامةالتحليل الثابتتحليل الكودتدقيق التكوينأمن الشبكاتDevSecOps
GitHubnoah4ever/sshconfig-lint

sshconfig-lint

مدقق قائم على القواعد لملفات تكوين عميل OpenSSH يكتشف الـhosts المكررة، ملفات الهوية المفقودة، الخوارزميات الضعيفة، مشاكل ترتيب wildcard، والإعدادات الخطرة مع إخراج JSON ورموز خروج مناسبة لـ CI.

عرض المستودع
16163منذ 27 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

sshconfig-lint

Tests crates.io License: MIT

محرك واحد لكل مكان يتغير فيه إعداد SSH الخاص بك.

يكتشف sshconfig-lint الأخطاء الدلالية في إعدادات عميل OpenSSH: المضيفات المكررة، مسارات الهوية المعطوبة، الخيارات غير الآمنة، الخوارزميات الضعيفة، ترتيب أحرف البدل، وسلاسل 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

الإجراء الرسمي متاح في 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

تظهر النتائج كتعليقات توضيحية على الملف والسطر المحددين. يقوم الإجراء بتنزيل الإصدار المطابق لوسمه ويتحقق من 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 ومسارات نظام الملفات. تُرفق النتائج من Includes المتداخلة بالملف المُضمّن وتُمسح مع المستند الجذر.

صيغ الإخراج

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تعذّر قراءة إعداد واحد مطلوب على الأقل

القواعد

الرمزالقاعدةالخطورة
INVALID_VALUEقيمة توجيه غير صالحةerror
DUP_HOSTكتلة Host مكررةwarning
MISSING_IDENTITYIdentityFile غير موجودerror
WILDCARD_ORDERترتيب أحرف البدل في Hostwarning
WEAK_ALGOخوارزمية ضعيفةwarning
DUP_DIRECTIVEتوجيه مكررwarning
INSECURE_OPTخيار غير آمنwarning
UNSAFE_CTRL_PATHControlPath غير آمنwarning
INCLUDE_CYCLEدورة Includeerror
INCLUDE_DEPTHتداخل Include عميق جدًاerror
INCLUDE_READتعذّر قراءة Includeerror
INCLUDE_GLOBنمط Include غير صالحerror
INCLUDE_NO_MATCHInclude لا يطابق أي ملفاتinfo
NEGATED_HOSTHost يحتوي على أنماط منفية فقطwarning
PROXY_CONFLICTتعارض ProxyCommand وProxyJumpwarning
REVOKED_HOST_KEYS_UNREADABLEملف RevokedHostKeys غير قابل للقراءةerror
MISSING_CERTIFICATECertificateFile غير موجودerror
LOCAL_COMMAND_DISABLEDLocalCommand غير مفعّلwarning
INVALID_TOKENرمز نسبة مئوية غير صالحerror
INVALID_SYNTAXصيغة غير صالحةerror
UNKNOWN_DIRECTIVEتوجيه غير معروفerror
DEPRECATED_OPTIONخيار مهملwarning
INVALID_MATCHشرط Match غير صالحerror
CONTROL_PERSIST_UNUSEDControlPersist بدون ControlMasterwarning
UPDATE_HOSTKEYS_ASK_PERSISTUpdateHostKeys ask مع ControlPersistwarning
تنزيل الأداة