All Projects → FusionAuth → Security Scripts

FusionAuth / Security Scripts

Licence: apache-2.0
Scripts built from our Guide to User Data Security

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Security Scripts

Windows11 Hardening
My Windows 11 x64 security hardening guide
Stars: ✭ 267 (-38.76%)
Mutual labels:  security-hardening
Electriceye
Continuously monitor your AWS services for configurations that can lead to degradation of confidentiality, integrity or availability. All results will be sent to Security Hub for further aggregation and analysis.
Stars: ✭ 255 (-41.51%)
Mutual labels:  security-hardening
Rhel7 Cis
Ansible role for Red Hat 7 CIS Baseline
Stars: ✭ 337 (-22.71%)
Mutual labels:  security-hardening
awesome-rails-security
A curated list of security resources for a Ruby on Rails application
Stars: ✭ 36 (-91.74%)
Mutual labels:  security-hardening
wazuh-puppet
Wazuh - Puppet module
Stars: ✭ 25 (-94.27%)
Mutual labels:  security-hardening
Serialkiller
Look-Ahead Java Deserialization Library
Stars: ✭ 277 (-36.47%)
Mutual labels:  security-hardening
MacOS-Security-Baseline
Baseline Security Configuration For MacOS
Stars: ✭ 61 (-86.01%)
Mutual labels:  security-hardening
Xss Listener
🕷️ XSS Listener is a penetration tool for easy to steal data with various XSS.
Stars: ✭ 414 (-5.05%)
Mutual labels:  security-hardening
UBUNTU18-CIS
CIS Baseline Ansible Role for Ubuntu 18
Stars: ✭ 20 (-95.41%)
Mutual labels:  security-hardening
Thgtoa
The Hitchhiker’s Guide to Online Anonymity
Stars: ✭ 326 (-25.23%)
Mutual labels:  security-hardening
wazuh-cloudformation
Wazuh - Amazon AWS Cloudformation
Stars: ✭ 32 (-92.66%)
Mutual labels:  security-hardening
SIPTorch
A "SIP Torture" (RFC 4475) testing suite.
Stars: ✭ 54 (-87.61%)
Mutual labels:  security-hardening
Wazuh Ruleset
Wazuh - Ruleset
Stars: ✭ 305 (-30.05%)
Mutual labels:  security-hardening
RHEL7-CIS
Ansible RHEL 7 - CIS Benchmark Hardening Script
Stars: ✭ 28 (-93.58%)
Mutual labels:  security-hardening
Go Safeweb
Secure-by-default HTTP servers in Go.
Stars: ✭ 366 (-16.06%)
Mutual labels:  security-hardening
WhiteBeam
WhiteBeam: Transparent endpoint security
Stars: ✭ 74 (-83.03%)
Mutual labels:  security-hardening
Krane
Kubernetes RBAC static Analysis & visualisation tool
Stars: ✭ 254 (-41.74%)
Mutual labels:  security-hardening
Ansible Lockdown
Ansible playbook roles for security
Stars: ✭ 424 (-2.75%)
Mutual labels:  security-hardening
Quick Secure
Quickly secure UNIX/Linux systems
Stars: ✭ 379 (-13.07%)
Mutual labels:  security-hardening
Prowler
Prowler is a security tool to perform AWS security best practices assessments, audits, incident response, continuous monitoring, hardening and forensics readiness. It contains more than 200 controls covering CIS, ISO27001, GDPR, HIPAA, SOC2, ENS and other security frameworks.
Stars: ✭ 4,561 (+946.1%)
Mutual labels:  security-hardening

Security Scripts

These scripts provided a practical implementation of the steps and practices described in the FusionAuth Security Guide. https://fusionauth.io/resources/guide-to-user-data-security

This project contains a set of bash scripts that can be used to secure a new Linux server. The scripts are broken into parts:

  • Configuration
  • Server setup

Configuration

Before you can use secure your server, you need to run the configuration script. This script is named configure.sh. This script will ask you a variety of questions related to your server including:

  • IP Address
  • Alert email
  • SMTP server
  • SMTP port
  • SMTP username
  • SMTP password
  • SMTP encryption (if any)
  • Slack Webhook URL
  • Pushover application and user keys

After the script has asked all the questions, it will output all of the necessary configuration files that the server setup scripts will use. These will be placed in the output directory.

Server Setup

After you run the configure script, you can run the server setup script. This script is named setup-new-server.sh. This script will prompt you for the password for the ordinary user account that is created on the server and then it will upload all of the files from the output directory to the server and execute the install script on the server.

Chef

You can also use the Chef Cookbook instead of the configure.sh and setup-new-server.sh scripts. The Chef Cookbook is located in the chef-repo/cookbooks. You can install this Cookbook in your Chef server by executing these commands:

$ cd chef-repo
$ knife cookbook upload security_guide

This will add the Cookbook to the Chef server that is configured in your knife.rb file. From there, you can use the Cookbook to bootstrap your nodes.

To use this Chef Cookbook, you first need to configure these required attributes:

  • node['security_guide']['users'] - This is an array that contains the users that the Chef recipe will create on the server. Each user must have these attributes:
    • username - The username of the user
    • password - The hashed password of the user (this is put directly in the /etc/shadow file)
    • public_key - The RSA public key of the user
  • node['security_guide']['monit']['alert_email] - The email address where Monit alerts are sent

In addition to the required attributes, the Chef Cookbook also takes these optional attributes:

  • node['security_guide']['sudo_group'] - The name of the group that grants a user sudo access (defaults to sudo)
  • node['security_guide']['monit']['email_server'] - The name of the SMTP server Monit uses to send emails (defaults to localhost)
  • node['security_guide']['monit']['email_port'] - The SMTP port Monit uses to send emails (defaults to 25)
  • node['security_guide']['monit']['email_username'] - The username that Monit uses to connect to the SMTP server
  • node['security_guide']['monit']['email_password'] - The password that Monit uses to connect to the SMTP server
  • node['security_guide']['monit']['email_encryption'] - The encryption Monit uses to connect to the SMTP server. This must be ssl or tlsv12 if specified
  • node['security_guide']['monit']['slack_url'] - The Slack Webhook URL that Monit will use to send Slack notifications (defaults to '')
  • node['security_guide']['monit']['slack_enabled'] - Whether or not Slack notifications are enabled as a String not a boolean (defaults to 'false')
  • node['security_guide']['monit']['pushover_application'] - The Pushover application id Monit uses to send Pushover notifications to (defaults to '')
  • node['security_guide']['monit']['pushover_user'] - The Pushover user id Monit uses to send Pushover notifications to (defaults to '')
  • node['security_guide']['monit']['pushover_enabled'] - Whether or not Pushover notifications are enabled as a String not a boolean (defaults to 'false')

You can set these attributes via a node attribute file, role or environment setting. The Chef recipe will verify that you have specified the required attributes and fail if they are absent.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].