# Filesystem

Concord CRM uses the local file system and all the files that are uploaded via Concord CRM dashboard, including the imported emails attachments, are stored on the server where you have installed Concord CRM.

However, if you are dealing with a lot files and most of your emails are containing attachments, there is a support for Amazon S3 bucket to be configured, in this case, the files will be saved in the Amazon S3 bucket instead on your server where you have installed Concord CRM.

Uploaded files like logo and avatars are not saved on the bucket, they are still saved on the server where you have installed Concord CRM.

## What Is Amazon S3 ?

Amazon S3 is a "Simple Storage Service" Provided by amazon AWS. It allows you to store objects through a web service Interface. To read more about S3 Click here.

Please keep in mind that AWS S3 is paid service and you will still need to pay for the storage you are using but it's pretty affordable.

## Create S3 Bucket

- Login to your AWS Console.

- Make sure that your AWS account is verified by Amazon.

- Click Services and under Storage choose S3.

- Click Create Bucket.

- Enter Bucket name, for example, your-company-concordcrm-bucket

- Choose Region.

- In the Object Ownership configuration section apply the following config:

- Scroll down and uncheck the Block all public access option.

- Click Create Bucket.

Now you need encryption keys, secrets to communicate with S3 from your Concord CRM installation. For this AWS provides you IAM service where you can manage users and encryption keys.

## Create IAM User

- On AWS console page select IAM service OR Click Here.
- From the left sidebar select Users and on users page click on Add User.

- Enter user name.
- Click on Next.
- On next screen, Select Attach policies directly.
- A list of Policies will appear. Search for S3 and select AmazonS3FullAccess.
- Click on the Next Button.

- Click Create User.

- After the user is created, you will be redirected to the users table, click on the user name from the users table.

- Click the Security Credentials tab.

- Scroll down to the Access keys section.

- Click Create access key.

- Choose Application running outside AWS.

- Click Next.

- Click Create Access Key.

- Download the .csv file which contains all your credentials (AWS Access Key ID & Secret Key).

## Configure S3 Bucket

When you decide to use the S3 bucket for storage, it's not recommended to de-configure the bucket and go back to the local storage, because the files that were uploaded to the bucket will be not be accessible.

After we created the bucket in AWS, created the AIM user with proper policy and the access keys are generated, now we are ready to configure the S3 Bucket in Concord CRM.

In your Concord CRM installation edit the `.env` file in the root of your installation and at the bottom of the file add the following contents:

    MEDIA_DISK=s3
    AWS_ACCESS_KEY_ID=your-access-key-from-the-csv-file
    AWS_SECRET_ACCESS_KEY=your-secret-key-from-the-csv-file
    AWS_DEFAULT_REGION=bucket-region
    AWS_BUCKET=bucket-name

Read more about editing the `.env` file.

AWS_DEFAULT_REGION value is depend on the region you've selected while creating a new bucket, the region key name is available on the S3 buckets listing page.

For example, if you selected EU (Frankfurt) then the value of AWS_DEFAULT_REGION will be eu-central-1. To view complete list Click Here.