Thank you for your interest in contributing to LDAPSentinel! We welcome contributions of all kinds, including bug reports, feature requests, code contributions, documentation improvements, and more. Your involvement helps make this project better for everyone.
Please note that this project is governed by a Code of Conduct. By participating, you agree to abide by its terms. Be respectful, considerate, and constructive in all interactions.
If you encounter any problems or have suggestions for improvement, please create an issue in the GitHub Issues section. Include as much detail as possible:
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
- Any relevant logs or screenshots
We welcome code contributions, whether it’s fixing bugs, adding features, or improving existing functionality. To contribute code:
-
Fork the repository: Click the "Fork" button on the repository page to create your own copy.
-
Clone your fork: Use
git cloneto clone your fork to your local machine.git clone https://github.com/your-username/LDAPSentinel.git
-
Create a new branch: Create a branch for your changes.
git checkout -b feature-or-bugfix-description
-
Make your changes: Modify the code or documentation as needed.
-
Run tests: Ensure your changes pass all existing tests and add new ones if necessary.
-
Commit your changes: Write a clear and descriptive commit message.
git commit -m "Brief description of your changes" -
Push your branch: Push your branch to your forked repository.
git push origin feature-or-bugfix-description
-
Submit a pull request: Go to the original repository and create a pull request. Describe your changes in detail and link to any relevant issues.
To set up the development environment for LDAPSentinel:
- Ensure you have Zeek installed (version 6.0 or earlier).
- Install the spicy-ldap package for parsing LDAP traffic.
- Clone this repository and navigate to the project directory.
- Load the
main.zeekscript into your Zeek instance for testing.
Tests are located in the tests/ directory. To run the tests:
-
Use the provided
.pcapfiles to simulate LDAP traffic. -
Run Zeek with the test configuration:
zeek -C -r tests/sample_ldap_traffic.pcap "PATH TO zeek"/zeek/share/zeek/site/LDAPSentinel "LogAscii::use_json=T"
-
Verify the output matches expected results in the
tests/basic.testfile.
Before submitting your contributions, ensure the following:
- Your code adheres to the project’s style guidelines.
- Your changes are well-documented.
- All tests pass, and new tests have been added for new functionality.
- Follow Zeek scripting conventions for clarity and maintainability.
- Use meaningful variable and function names.
- Write concise and descriptive comments where necessary.
- Keep commit messages clear and concise.
Thank you for contributing to LDAPSentinel! Your support and collaboration are greatly appreciated.