mirror of
https://github.com/PhyreApps/PhyrePanel.git
synced 2024-11-21 23:20:24 +00:00
update
This commit is contained in:
parent
ce62ec5ab1
commit
14f2d0cd20
6 changed files with 31 additions and 10 deletions
|
@ -69,10 +69,12 @@ class SetupEmailServer extends Command
|
||||||
$postfixMysqlVirtualMailboxMapsCf = PhyreBlade::render('email::server.postfix.sql.mysql_virtual_mailbox_maps.cf',$mysqlDbDetails);
|
$postfixMysqlVirtualMailboxMapsCf = PhyreBlade::render('email::server.postfix.sql.mysql_virtual_mailbox_maps.cf',$mysqlDbDetails);
|
||||||
file_put_contents('/etc/postfix/sql/mysql_virtual_mailbox_maps.cf', $postfixMysqlVirtualMailboxMapsCf);
|
file_put_contents('/etc/postfix/sql/mysql_virtual_mailbox_maps.cf', $postfixMysqlVirtualMailboxMapsCf);
|
||||||
|
|
||||||
|
$findDkim = DomainDkim::where('domain_name', setting('email.hostname'))->first();
|
||||||
$postfixMainCf = PhyreBlade::render('email::server.postfix.main.cf', [
|
$postfixMainCf = PhyreBlade::render('email::server.postfix.main.cf', [
|
||||||
'hostName' => setting('email.hostname'),
|
'hostName' => setting('email.hostname'),
|
||||||
'domain' => setting('email.domain'),
|
'domain' => setting('email.domain'),
|
||||||
'sslPaths' => $sslPaths,
|
'sslPaths' => $sslPaths,
|
||||||
|
'dkim' => $findDkim,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
file_put_contents('/etc/postfix/main.cf', $postfixMainCf);
|
file_put_contents('/etc/postfix/main.cf', $postfixMainCf);
|
||||||
|
|
|
@ -4,6 +4,7 @@ namespace Modules\Email\App\Http\Livewire;
|
||||||
|
|
||||||
use Livewire\Component;
|
use Livewire\Component;
|
||||||
use Modules\Email\App\Models\DomainDkim;
|
use Modules\Email\App\Models\DomainDkim;
|
||||||
|
use Modules\Email\App\Models\DomainDkimSigning;
|
||||||
use Modules\Email\DkimDomainSetup;
|
use Modules\Email\DkimDomainSetup;
|
||||||
|
|
||||||
class DkimSetup extends Component
|
class DkimSetup extends Component
|
||||||
|
@ -90,6 +91,14 @@ class DkimSetup extends Component
|
||||||
$findDomainDkim->private_key = $output['privateKey'];
|
$findDomainDkim->private_key = $output['privateKey'];
|
||||||
$findDomainDkim->public_key = $output['text'];
|
$findDomainDkim->public_key = $output['text'];
|
||||||
$findDomainDkim->save();
|
$findDomainDkim->save();
|
||||||
|
|
||||||
|
$findDomainDkimSigning = DomainDkimSigning::where('author', '*')->where('dkim_id', $findDomainDkim->id)->first();
|
||||||
|
if (!$findDomainDkimSigning) {
|
||||||
|
$findDomainDkimSigning = new DomainDkimSigning();
|
||||||
|
$findDomainDkimSigning->author = '*';
|
||||||
|
$findDomainDkimSigning->dkim_id = $findDomainDkim->id;
|
||||||
|
$findDomainDkimSigning->save();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return $output;
|
return $output;
|
||||||
|
|
|
@ -14,5 +14,7 @@ class DomainDkim extends Model
|
||||||
* The attributes that are mass assignable.
|
* The attributes that are mass assignable.
|
||||||
*/
|
*/
|
||||||
protected $fillable = [];
|
protected $fillable = [];
|
||||||
|
|
||||||
|
protected $table = 'domain_dkim';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,4 +15,6 @@ class DomainDkimSigning extends Model
|
||||||
*/
|
*/
|
||||||
protected $fillable = [];
|
protected $fillable = [];
|
||||||
|
|
||||||
|
protected $table = 'domain_dkim_signings';
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,8 +7,8 @@ class DkimDomainSetup
|
||||||
|
|
||||||
public static function run($domain)
|
public static function run($domain)
|
||||||
{
|
{
|
||||||
$dkimPrivateKeyFile = '/etc/opendkim/keys/'.$domain.'/dkim.private';
|
$dkimPrivateKeyFile = '/etc/opendkim/keys/'.$domain.'/mail.private';
|
||||||
$dkimTextFile = '/etc/opendkim/keys/'.$domain.'/dkim.txt';
|
$dkimTextFile = '/etc/opendkim/keys/'.$domain.'/mail.txt';
|
||||||
|
|
||||||
if (is_file($dkimPrivateKeyFile)) {
|
if (is_file($dkimPrivateKeyFile)) {
|
||||||
return [
|
return [
|
||||||
|
@ -21,7 +21,7 @@ class DkimDomainSetup
|
||||||
shell_exec('sudo chown -R opendkim:opendkim /etc/opendkim/keys/'.$domain);
|
shell_exec('sudo chown -R opendkim:opendkim /etc/opendkim/keys/'.$domain);
|
||||||
shell_exec('sudo chmod go-rw /etc/opendkim/keys/'.$domain);
|
shell_exec('sudo chmod go-rw /etc/opendkim/keys/'.$domain);
|
||||||
|
|
||||||
$output = shell_exec('sudo opendkim-genkey -b 2048 -D /etc/opendkim/keys/'.$domain.' -h rsa-sha256 -r -s dkim -d '.$domain.' -v');
|
$output = shell_exec('sudo opendkim-genkey -b 2048 -D /etc/opendkim/keys/'.$domain.' -h rsa-sha256 -r -s mail -d '.$domain.' -v');
|
||||||
|
|
||||||
$dkimPrivateKey = file_get_contents($dkimPrivateKeyFile);
|
$dkimPrivateKey = file_get_contents($dkimPrivateKeyFile);
|
||||||
$dkimText = file_get_contents($dkimTextFile);
|
$dkimText = file_get_contents($dkimTextFile);
|
||||||
|
|
|
@ -44,7 +44,9 @@ smtp_sasl_local_domain = $myhostname
|
||||||
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
|
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
|
||||||
smtp_sender_restrictions = permit_sasl_authenticated
|
smtp_sender_restrictions = permit_sasl_authenticated
|
||||||
smtp_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
|
smtp_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
|
||||||
# smtp_milters = inet:127.0.0.1:8891
|
@if($dkim)
|
||||||
|
smtp_milters = inet:127.0.0.1:8891
|
||||||
|
@endif
|
||||||
|
|
||||||
# SMTPD
|
# SMTPD
|
||||||
@if(!empty($sslPaths))
|
@if(!empty($sslPaths))
|
||||||
|
@ -64,13 +66,17 @@ smtpd_sasl_local_domain = $myhostname
|
||||||
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
|
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
|
||||||
smtpd_sender_restrictions = permit_sasl_authenticated
|
smtpd_sender_restrictions = permit_sasl_authenticated
|
||||||
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
|
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated, defer_unauth_destination
|
||||||
# smtpd_milters = inet:127.0.0.1:8891
|
@if($dkim)
|
||||||
|
smtpd_milters = inet:127.0.0.1:8891
|
||||||
|
@endif
|
||||||
|
|
||||||
|
@if($dkim)
|
||||||
# DKIM
|
# DKIM
|
||||||
# milter_default_action = accept
|
milter_default_action = accept
|
||||||
# milter_protocol = 2
|
milter_protocol = 2
|
||||||
# non_smtpd_milters = inet:127.0.0.1:8891
|
non_smtpd_milters = inet:127.0.0.1:8891
|
||||||
# non_smtp_milters = inet:127.0.0.1:8891
|
non_smtp_milters = inet:127.0.0.1:8891
|
||||||
|
@endif
|
||||||
|
|
||||||
# Virtual Domains
|
# Virtual Domains
|
||||||
virtual_mailbox_base = 0
|
virtual_mailbox_base = 0
|
||||||
|
|
Loading…
Reference in a new issue