forked from anonaddy/anonaddy
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7b9a95c
commit 193b325
Showing
49 changed files
with
2,241 additions
and
709 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -27,9 +27,12 @@ REDIS_HOST=127.0.0.1 | |
REDIS_PASSWORD=null | ||
REDIS_PORT=6379 | ||
|
||
MAIL_DRIVER=sendmail | ||
MAIL_FROM_NAME=Example | ||
MAIL_FROM_ADDRESS=[email protected] | ||
MAIL_DRIVER=smtp | ||
MAIL_HOST=mail.example.com | ||
MAIL_PORT=25 | ||
MAIL_ENCRYPTION=tls | ||
|
||
ANONADDY_RETURN_PATH=[email protected] | ||
ANONADDY_ADMIN_USERNAME=johndoe | ||
|
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
#!/bin/sh | ||
if [ -z "$husky_skip_init" ]; then | ||
debug () { | ||
[ "$HUSKY_DEBUG" = "1" ] && echo "husky (debug) - $1" | ||
} | ||
|
||
readonly hook_name="$(basename "$0")" | ||
debug "starting $hook_name..." | ||
|
||
if [ "$HUSKY" = "0" ]; then | ||
debug "HUSKY env variable is set to 0, skipping hook" | ||
exit 0 | ||
fi | ||
|
||
if [ -f ~/.huskyrc ]; then | ||
debug "sourcing ~/.huskyrc" | ||
. ~/.huskyrc | ||
fi | ||
|
||
export readonly husky_skip_init=1 | ||
sh -e "$0" "$@" | ||
exitCode="$?" | ||
|
||
if [ $exitCode != 0 ]; then | ||
echo "husky - $hook_name hook exited with code $exitCode (error)" | ||
exit $exitCode | ||
fi | ||
|
||
exit 0 | ||
fi |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -143,15 +143,13 @@ Yes there is an [open-source](https://github.com/anonaddy/browser-extension) bro | |
|
||
## Is there an Android app? | ||
|
||
There is not an official Android app that I have made myself as I am not familiar with mobile development. | ||
Yes, there is an excellent [open-source](https://gitlab.com/Stjin/anonaddy-android) Android app created by [Stjin](https://twitter.com/Stjinchan) that is available to download from the [Play Store](https://play.google.com/store/apps/details?id=host.stjin.anonaddy) (paid) and [F-Droid](https://f-droid.org/packages/host.stjin.anonaddy) (free). The developer of this app has put in a lot of time and effort so if you would like to support him please purchase the Play Store version. | ||
|
||
There is however an excellent [open-source](https://gitlab.com/Stjin/anonaddy-android) Android app created by [Stjin](https://twitter.com/Stjinchan) that is available to download from the [Play Store](https://play.google.com/store/apps/details?id=host.stjin.anonaddy) (paid) and [F-Droid](https://f-droid.org/packages/host.stjin.anonaddy) (free). The developer of this app has put in a lot of time and effort so if you would like to support him please purchase the Play Store version. | ||
|
||
There is also another unofficial [open-source](https://github.com/KhalidWar/anonaddy) Android app created by [KhalidWar](https://twitter.com/RealKhalidWar) available on the [Play Store](https://play.google.com/store/apps/details?id=com.khalidwar.anonaddy). | ||
There is also another [open-source](https://github.com/KhalidWar/anonaddy) Android app created by [KhalidWar](https://twitter.com/RealKhalidWar) available on the [Play Store](https://play.google.com/store/apps/details?id=com.khalidwar.anonaddy). | ||
|
||
## Is there an iOS app? | ||
|
||
Yes, [KhalidWar's](https://twitter.com/RealKhalidWar) unofficial [open-source](https://github.com/KhalidWar/anonaddy) app from above is also available on the [App Store](https://apps.apple.com/us/app/addymanager/id1547461270). | ||
Yes, [KhalidWar's](https://twitter.com/RealKhalidWar) [open-source](https://github.com/KhalidWar/anonaddy) app from above is also available on the [App Store](https://apps.apple.com/us/app/addymanager/id1547461270). | ||
|
||
## How do I add my own GPG/OpenPGP key for encryption? | ||
|
||
|
@@ -178,7 +176,7 @@ If you're concerned that your aliases are all linked by your username e.g. @john | |
|
||
## Where is the server located? | ||
|
||
The server is located in Amsterdam, Netherlands with [Greenhost.net](https://greenhost.net/). Greenhost focuses greatly on privacy and security and their servers run entirely on Dutch wind energy. | ||
The server is located in Amsterdam, Netherlands with [Greenhost.net](https://greenhost.net/). Greenhost focuses greatly on privacy and security and their servers run entirely on Dutch wind energy. The backup mail server is located in Warsaw, Poland with [UpCloud](https://upcloud.com). | ||
|
||
## What if I don't trust you? | ||
|
||
|
@@ -364,7 +362,7 @@ You can add 1 additional username as a Lite user and up to 3 additional username | |
|
||
## I'm not receiving any emails, what's wrong? | ||
|
||
Please make sure to add [email protected], [email protected] and any other aliases you use to your address book and also to check your spam folder. Make sure to mark emails from us as safe if they turn up in spam. | ||
Please make sure to add [email protected], [email protected] and any other aliases you use to your address book and also to check your spam folder. Make sure to mark emails from AnonAddy as safe if they turn up in spam. | ||
|
||
If an alias has been previously deleted and you try to send email to it, the emails will be rejected with an error message - "554 5.7.1 Recipient address rejected: Access denied". | ||
|
||
|
@@ -374,13 +372,20 @@ The sender of the email may be failing SPF, DMARC or DNS blacklist checks result | |
|
||
If you are forwarding emails to an icloud.com email address some users are having issues with a small number of emails being rejected (often those from Facebook). | ||
|
||
For some reason Apple seems to think these emails are spam and returns this error message: | ||
For some reason Apple seems to think these emails are spam/phishing and returns this error message: | ||
|
||
> Diagnostic-Code: smtp; 550 5.7.1 [CS01] Message rejected due to local policy. | ||
I have contacted Apple multiple times about this but they have not yet responded. | ||
|
||
If you are having issues with emails being rejected as "possibly spammy" by Google, iCloud or Microsoft then try adding a GPP key and **enabling encryption**. This will prevent the email's content being scanned and reduce the change of it being rejected. | ||
If you are having issues with emails being rejected as "possibly spammy" by Google, iCloud or Microsoft then please try the following steps if you can: | ||
|
||
1. **Replace the email subject** by going to your settings in AnonAddy | ||
2. Try adding a GPP key and **enabling encryption**. This will prevent the email's content being scanned and reduce the change of it being rejected. | ||
|
||
I will also soon be adding an option to change the format of the display from part of the "From:" header. | ||
|
||
If neither of the above options work then please try changing to another recipient so that you can continue to receive emails. | ||
|
||
If you still aren't receiving emails please contact me. | ||
|
||
|
@@ -417,7 +422,7 @@ For any other questions just send an email to - [[email protected]](mailto:co | |
## Software Requirements | ||
|
||
* Postfix (3.0.0+) (plus postfix-mysql for database queries and postfix-pcre) | ||
* PHP (7.4+) and the [php-mailparse](https://pecl.php.net/package/mailparse) extension, the [php-gnupg](https://pecl.php.net/package/gnupg) extension if you plan to encrypt forwarded emails, the [php-imagick](https://pecl.php.net/package/imagick) extension for generating 2FA QR codes | ||
* PHP (8.0+) and the [php-mailparse](https://pecl.php.net/package/mailparse) extension, the [php-gnupg](https://pecl.php.net/package/gnupg) extension if you plan to encrypt forwarded emails, the [php-imagick](https://pecl.php.net/package/imagick) extension for generating 2FA QR codes | ||
* Port 25 unblocked and open | ||
* Redis (4.x+) for throttling and queues | ||
* FQDN as hostname e.g. mail.anonaddy.me | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
<?php | ||
|
||
namespace App\Console\Commands; | ||
|
||
use App\Models\Domain; | ||
use App\Notifications\DomainMxRecordsInvalid; | ||
use Illuminate\Console\Command; | ||
|
||
class CheckDomainsMxValidation extends Command | ||
{ | ||
/** | ||
* The name and signature of the console command. | ||
* | ||
* @var string | ||
*/ | ||
protected $signature = 'anonaddy:check-domains-mx-validation'; | ||
|
||
/** | ||
* The console command description. | ||
* | ||
* @var string | ||
*/ | ||
protected $description = 'Checks all existing domains to see if they still have valid MX records'; | ||
|
||
/** | ||
* Create a new command instance. | ||
* | ||
* @return void | ||
*/ | ||
public function __construct() | ||
{ | ||
parent::__construct(); | ||
} | ||
|
||
/** | ||
* Execute the console command. | ||
* | ||
* @return int | ||
*/ | ||
public function handle() | ||
{ | ||
Domain::all() | ||
->each(function ($domain) { | ||
try { | ||
if (! $domain->checkMxRecords()) { | ||
// Notify user via email only if domain's MX previously were valid | ||
if (!is_null($domain->domain_mx_validated_at)) { | ||
$domain->user->notify(new DomainMxRecordsInvalid($domain->domain)); | ||
} | ||
|
||
$domain->domain_mx_validated_at = null; | ||
$domain->save(); | ||
} | ||
} catch (\Exception $e) { | ||
// | ||
} | ||
}); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
<?php | ||
|
||
namespace App\Console\Commands; | ||
|
||
use App\Models\Domain; | ||
use App\Notifications\DomainUnverifiedForSending; | ||
use Illuminate\Console\Command; | ||
|
||
class CheckDomainsSendingVerification extends Command | ||
{ | ||
/** | ||
* The name and signature of the console command. | ||
* | ||
* @var string | ||
*/ | ||
protected $signature = 'anonaddy:check-domains-sending-verification'; | ||
|
||
/** | ||
* The console command description. | ||
* | ||
* @var string | ||
*/ | ||
protected $description = 'Checks all existing domains to see if they are still verified for sending'; | ||
|
||
/** | ||
* Create a new command instance. | ||
* | ||
* @return void | ||
*/ | ||
public function __construct() | ||
{ | ||
parent::__construct(); | ||
} | ||
|
||
/** | ||
* Execute the console command. | ||
* | ||
* @return mixed | ||
*/ | ||
public function handle() | ||
{ | ||
Domain::whereNotNull('domain_sending_verified_at')->get() | ||
->each(function ($domain) { | ||
try { | ||
$result = $domain->checkVerificationForSending(); | ||
|
||
if ($result->getData()->success === false) { | ||
// Notify user via email, give reason | ||
$domain->user->notify(new DomainUnverifiedForSending($domain->domain, $result->getData()->message)); | ||
|
||
$domain->domain_sending_verified_at = null; | ||
$domain->save(); | ||
} | ||
} catch (\Exception $e) { | ||
// | ||
} | ||
}); | ||
} | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
<?php | ||
|
||
namespace App\Console\Commands; | ||
|
||
use App\Models\FailedDelivery; | ||
use Illuminate\Console\Command; | ||
|
||
class ClearFailedDeliveries extends Command | ||
{ | ||
/** | ||
* The name and signature of the console command. | ||
* | ||
* @var string | ||
*/ | ||
protected $signature = 'anonaddy:clear-failed-deliveries'; | ||
|
||
/** | ||
* The console command description. | ||
* | ||
* @var string | ||
*/ | ||
protected $description = 'Clears failed deliveries that are older than 3 days'; | ||
|
||
/** | ||
* Create a new command instance. | ||
* | ||
* @return void | ||
*/ | ||
public function __construct() | ||
{ | ||
parent::__construct(); | ||
} | ||
|
||
/** | ||
* Execute the console command. | ||
* | ||
* @return int | ||
*/ | ||
public function handle() | ||
{ | ||
FailedDelivery::where('created_at', '<=', now()->subDays(3))->delete(); | ||
} | ||
} |
Oops, something went wrong.