diff --git a/bin/v-add-user b/bin/v-add-user
index 9fb12231..99de6ea7 100755
--- a/bin/v-add-user
+++ b/bin/v-add-user
@@ -28,7 +28,7 @@ EVENT="$DATE $TIME $SCRIPT $A1 $A2 $A3 $A4 $A5 $A6 $A7 $A8 $A9"
is_user_free() {
check_sysuser=$(cut -f 1 -d : /etc/passwd | grep -w "$user" )
if [ ! -z "$check_sysuser" ] || [ -e "$USER_DATA" ]; then
- echo "Error: user $user exist"
+ echo "Error: user $user exists"
log_event "$E_EXISTS" "$EVENT"
exit $E_EXISTS
fi
diff --git a/func/domain.sh b/func/domain.sh
index fc10c38d..65d62f73 100644
--- a/func/domain.sh
+++ b/func/domain.sh
@@ -327,15 +327,9 @@ is_web_domain_cert_valid() {
fi
if [ -e "$ssl_dir/$domain.ca" ]; then
- ca_vrf=$(openssl verify $ssl_dir/$domain.ca 2>/dev/null |grep 'OK')
- if [ -z "$ca_vrf" ]; then
- echo "Error: ssl certificate authority is not valid"
- log_event "$E_INVALID" "$EVENT"
- exit $E_INVALID
- fi
-
- crt_vrf=$(openssl verify -untrusted $ssl_dir/$domain.ca \
- $ssl_dir/$domain.crt 2>/dev/null |grep 'OK')
+ crt_vrf=$(openssl verify -purpose sslserver \
+ -CAfile $ssl_dir/$domain.ca $ssl_dir/$domain.crt 2>/dev/null |\
+ grep 'OK')
if [ -z "$crt_vrf" ]; then
echo "Error: root or/and intermediate cerificate not found"
log_event "$E_NOTEXIST" "$EVENT"
diff --git a/install/debian/exim4.conf.template b/install/debian/exim4.conf.template
index a5d353a3..742f0409 100644
--- a/install/debian/exim4.conf.template
+++ b/install/debian/exim4.conf.template
@@ -1,14 +1,18 @@
-##########################################################################
+######################################################################
+# #
+# Exim configuration file for Vesta Control Panel #
+# #
+######################################################################
+
#SPAMASSASSIN = yes
-SPAM_SCORE = 50
-CLAMD = yes
-##########################################################################
+#SPAM_SCORE = 50
+#CLAMD = yes
domainlist local_domains = dsearch;/etc/exim4/domains/
domainlist relay_to_domains = dsearch;/etc/exim4/domains/
-hostlist relay_from_hosts = 127.0.0.1
-hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf
-hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf
+hostlist relay_from_hosts = 127.0.0.1
+hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf
+hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf
no_local_from_check
untrusted_set_sender = *
acl_smtp_connect = acl_check_spammers
@@ -43,43 +47,38 @@ DKIM_FILE = /etc/exim4/domains/${lc:${domain:$h_from:}}/dkim.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
-##########################################################################
+
+######################################################################
+# ACL CONFIGURATION #
+# Specifies access control lists for incoming SMTP mail #
+######################################################################
begin acl
-##########################################################################
+
acl_check_spammers:
- accept hosts = +whitelist
+ accept hosts = +whitelist
+
drop message = Your host in blacklist on this server.
log_message = Host in blacklist
hosts = +spammers
- deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text
- dnslists = ${readfile {/etc/exim4/dnsbl.conf}{:}}
+
accept
+
acl_check_mail:
- deny
- condition = ${if eq{$sender_helo_name}{}}
+ deny condition = ${if eq{$sender_helo_name}{}}
message = HELO required before MAIL
-# drop
-# condition = ${if isip{$sender_helo_name}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
+
drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}}
condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}}
delay = 45s
-# drop
-# condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
-# condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
- drop
- condition = ${if isip{$sender_helo_name}}
+
+ drop condition = ${if isip{$sender_helo_name}}
message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
-# drop
-# condition = ${if match{$sender_helo_name}{\N\.$\N}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
-# drop message = "REJECTED - Bad HELO - Host impersonating [$sender_helo_name]"
-# condition = ${if match{$sender_helo_name}{$primary_hostname}}
+
drop condition = ${if eq{[$interface_address]}{$sender_helo_name}}
message = $interface_address is _my_ address
+
accept
@@ -102,6 +101,10 @@ acl_check_rcpt:
accept authenticated = *
control = submission/domain=
+ deny message = Rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text
+ hosts = !+whitelist
+ dnslists = ${readfile {/etc/exim4/dnsbl.conf}{:}}
+
require message = relay not permitted
domains = +local_domains : +relay_to_domains
@@ -113,27 +116,30 @@ acl_check_rcpt:
.ifdef CLAMD
warn set acl_m0 = no
+
warn condition = ${if exists {/etc/exim4/domains/$domain/antivirus}{yes}{no}}
set acl_m0 = yes
.endif
+
.ifdef SPAMASSASSIN
warn set acl_m1 = no
+
warn condition = ${if exists {/etc/exim4/domains/$domain/antispam}{yes}{no}}
set acl_m1 = yes
.endif
+
accept
acl_check_data:
.ifdef CLAMD
- deny message = Message contains a virus ($malware_name) and has been rejected
+ deny message = Message contains a virus ($malware_name) and has been rejected
malware = *
condition = ${if eq{$acl_m0}{yes}{yes}{no}}
.endif
.ifdef SPAMASSASSIN
- warn
- !authenticated = *
+ warn !authenticated = *
hosts = !+relay_from_hosts
condition = ${if < {$message_size}{100K}}
condition = ${if eq{$acl_m1}{yes}{yes}{no}}
@@ -142,23 +148,29 @@ acl_check_data:
add_header = X-Spam-Bar: $spam_bar
add_header = X-Spam-Report: $spam_report
set acl_m2 = $spam_score_int
- warn
- condition = ${if !eq{$acl_m2}{} {yes}{no}}
+
+ warn condition = ${if !eq{$acl_m2}{} {yes}{no}}
condition = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}}
add_header = X-Spam-Status: Yes
message = SpamAssassin detected spam (from $sender_address to $recipients).
.endif
+
accept
acl_check_mime:
- deny message = Blacklisted file extension detected
- condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+ deny message = Blacklisted file extension detected
+ condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+
accept
-##########################################################################
+
+
+######################################################################
+# AUTHENTICATION CONFIGURATION #
+######################################################################
begin authenticators
-##########################################################################
+
dovecot_plain:
driver = dovecot
public_name = PLAIN
@@ -171,9 +183,14 @@ dovecot_login:
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
-##########################################################################
+
+
+######################################################################
+# ROUTERS CONFIGURATION #
+# Specifies how addresses are handled #
+######################################################################
begin routers
-##########################################################################
+
#smarthost:
# driver = manualroute
# domains = ! +local_domains
@@ -253,9 +270,12 @@ terminate_alias:
condition = ${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}{true}{false}}
-##########################################################################
+
+######################################################################
+# TRANSPORTS CONFIGURATION #
+######################################################################
begin transports
-##########################################################################
+
remote_smtp:
driver = smtp
#helo_data = $sender_address_domain
@@ -265,7 +285,6 @@ remote_smtp:
dkim_canon = relaxed
dkim_strict = 0
-
procmail:
driver = pipe
command = "/usr/bin/procmail -d $local_part"
@@ -306,7 +325,7 @@ local_spam_delivery:
delivery_date_add
envelope_to_add
return_path_add
- directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.spam"
+ directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.Spam"
quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M
quota_directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part"
quota_warn_threshold = 75%
@@ -335,8 +354,24 @@ devnull:
driver = appendfile
file = /dev/null
-##########################################################################
+
+
+######################################################################
+# RETRY CONFIGURATION #
+######################################################################
begin retry
+
+# Address or Domain Error Retries
+# ----------------- ----- -------
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
-##########################################################################
+
+
+
+######################################################################
+# REWRITE CONFIGURATION #
+######################################################################
begin rewrite
+
+
+
+######################################################################
diff --git a/install/rhel/exim-smarthost.conf b/install/rhel/exim-smarthost.conf
index 99b1c90c..086ca650 100644
--- a/install/rhel/exim-smarthost.conf
+++ b/install/rhel/exim-smarthost.conf
@@ -1,14 +1,18 @@
-##########################################################################
+######################################################################
+# #
+# Exim configuration file for Vesta Control Panel #
+# #
+######################################################################
+
#SPAMASSASSIN = yes
-SPAM_SCORE = 10
+#SPAM_SCORE = 50
#CLAMD = yes
-##########################################################################
domainlist local_domains = dsearch;/etc/exim/domains/
domainlist relay_to_domains = dsearch;/etc/exim/domains/
-hostlist relay_from_hosts = 127.0.0.1
-hostlist whitelist = net-iplsearch;/etc/exim/white-blocks.conf
-hostlist spammers = net-iplsearch;/etc/exim/spam-blocks.conf
+hostlist relay_from_hosts = 127.0.0.1
+hostlist whitelist = net-iplsearch;/etc/exim/white-blocks.conf
+hostlist spammers = net-iplsearch;/etc/exim/spam-blocks.conf
no_local_from_check
untrusted_set_sender = *
acl_smtp_connect = acl_check_spammers
@@ -43,43 +47,37 @@ DKIM_FILE = /etc/exim/domains/${lc:${domain:$h_from:}}/dkim.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
-##########################################################################
+######################################################################
+# ACL CONFIGURATION #
+# Specifies access control lists for incoming SMTP mail #
+######################################################################
begin acl
-##########################################################################
+
acl_check_spammers:
- accept hosts = +whitelist
+ accept hosts = +whitelist
+
drop message = Your host in blacklist on this server.
log_message = Host in blacklist
hosts = +spammers
- deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text
- dnslists = ${readfile {/etc/exim/dnsbl.conf}{:}}
+
accept
+
acl_check_mail:
- deny
- condition = ${if eq{$sender_helo_name}{}}
+ deny condition = ${if eq{$sender_helo_name}{}}
message = HELO required before MAIL
-# drop
-# condition = ${if isip{$sender_helo_name}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
+
drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}}
condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}}
delay = 45s
-# drop
-# condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
-# condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
- drop
- condition = ${if isip{$sender_helo_name}}
+
+ drop condition = ${if isip{$sender_helo_name}}
message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
-# drop
-# condition = ${if match{$sender_helo_name}{\N\.$\N}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
-# drop message = "REJECTED - Bad HELO - Host impersonating [$sender_helo_name]"
-# condition = ${if match{$sender_helo_name}{$primary_hostname}}
+
drop condition = ${if eq{[$interface_address]}{$sender_helo_name}}
message = $interface_address is _my_ address
+
accept
@@ -102,6 +100,10 @@ acl_check_rcpt:
accept authenticated = *
control = submission/domain=
+ deny message = Rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text
+ hosts = !+whitelist
+ dnslists = ${readfile {/etc/exim/dnsbl.conf}{:}}
+
require message = relay not permitted
domains = +local_domains : +relay_to_domains
@@ -113,27 +115,30 @@ acl_check_rcpt:
.ifdef CLAMD
warn set acl_m0 = no
+
warn condition = ${if exists {/etc/exim/domains/$domain/antivirus}{yes}{no}}
set acl_m0 = yes
.endif
+
.ifdef SPAMASSASSIN
warn set acl_m1 = no
+
warn condition = ${if exists {/etc/exim/domains/$domain/antispam}{yes}{no}}
set acl_m1 = yes
.endif
+
accept
acl_check_data:
.ifdef CLAMD
- deny message = Message contains a virus ($malware_name) and has been rejected
+ deny message = Message contains a virus ($malware_name) and has been rejected
malware = *
condition = ${if eq{$acl_m0}{yes}{yes}{no}}
.endif
.ifdef SPAMASSASSIN
- warn
- !authenticated = *
+ warn !authenticated = *
hosts = !+relay_from_hosts
condition = ${if < {$message_size}{100K}}
condition = ${if eq{$acl_m1}{yes}{yes}{no}}
@@ -142,23 +147,29 @@ acl_check_data:
add_header = X-Spam-Bar: $spam_bar
add_header = X-Spam-Report: $spam_report
set acl_m2 = $spam_score_int
- warn
- condition = ${if !eq{$acl_m2}{} {yes}{no}}
+
+ warn condition = ${if !eq{$acl_m2}{} {yes}{no}}
condition = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}}
add_header = X-Spam-Status: Yes
message = SpamAssassin detected spam (from $sender_address to $recipients).
.endif
+
accept
acl_check_mime:
deny message = Blacklisted file extension detected
condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+
accept
-##########################################################################
+
+
+######################################################################
+# AUTHENTICATION CONFIGURATION #
+######################################################################
begin authenticators
-##########################################################################
+
login:
driver = plaintext
public_name = LOGIN
@@ -178,9 +189,13 @@ dovecot_login:
server_set_id = $auth1
-##########################################################################
+
+######################################################################
+# ROUTERS CONFIGURATION #
+# Specifies how addresses are handled #
+######################################################################
begin routers
-##########################################################################
+
smarthost:
driver = manualroute
domains = ! +local_domains
@@ -258,9 +273,12 @@ terminate_alias:
condition = ${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}{true}{false}}
-##########################################################################
+
+######################################################################
+# TRANSPORTS CONFIGURATION #
+######################################################################
begin transports
-##########################################################################
+
remote_smtp:
driver = smtp
dkim_domain = DKIM_DOMAIN
@@ -314,7 +332,7 @@ local_spam_delivery:
delivery_date_add
envelope_to_add
return_path_add
- directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}}}}/mail/$domain/$local_part/.spam"
+ directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}}}}/mail/$domain/$local_part/.Spam"
quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}}}}M
quota_directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim/domains/$domain/passwd}}}}/mail/$domain/$local_part"
quota_warn_threshold = 75%
@@ -343,8 +361,24 @@ devnull:
driver = appendfile
file = /dev/null
-##########################################################################
+
+
+######################################################################
+# RETRY CONFIGURATION #
+######################################################################
begin retry
+
+# Address or Domain Error Retries
+# ----------------- ----- -------
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
-##########################################################################
+
+
+
+######################################################################
+# REWRITE CONFIGURATION #
+######################################################################
begin rewrite
+
+
+
+######################################################################
diff --git a/install/rhel/exim.conf b/install/rhel/exim.conf
index 8567cb18..0f983016 100644
--- a/install/rhel/exim.conf
+++ b/install/rhel/exim.conf
@@ -1,14 +1,18 @@
-##########################################################################
+######################################################################
+# #
+# Exim configuration file for Vesta Control Panel #
+# #
+######################################################################
+
#SPAMASSASSIN = yes
-SPAM_SCORE = 50
+#SPAM_SCORE = 50
#CLAMD = yes
-##########################################################################
domainlist local_domains = dsearch;/etc/exim/domains/
domainlist relay_to_domains = dsearch;/etc/exim/domains/
-hostlist relay_from_hosts = 127.0.0.1
-hostlist whitelist = net-iplsearch;/etc/exim/white-blocks.conf
-hostlist spammers = net-iplsearch;/etc/exim/spam-blocks.conf
+hostlist relay_from_hosts = 127.0.0.1
+hostlist whitelist = net-iplsearch;/etc/exim/white-blocks.conf
+hostlist spammers = net-iplsearch;/etc/exim/spam-blocks.conf
no_local_from_check
untrusted_set_sender = *
acl_smtp_connect = acl_check_spammers
@@ -26,8 +30,8 @@ av_scanner = clamd: /var/run/clamav/clamd.sock
.endif
tls_advertise_hosts = *
-tls_certificate = /etc/pki/tls/certs/exim.pem
-tls_privatekey = /etc/pki/tls/private/exim.pem
+tls_certificate = /usr/local/vesta/ssl/certificate.crt
+tls_privatekey = /usr/local/vesta/ssl/certificate.key
daemon_smtp_ports = 25 : 465 : 587 : 2525
tls_on_connect_ports = 465
@@ -43,43 +47,38 @@ DKIM_FILE = /etc/exim/domains/${lc:${domain:$h_from:}}/dkim.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
-##########################################################################
+
+######################################################################
+# ACL CONFIGURATION #
+# Specifies access control lists for incoming SMTP mail #
+######################################################################
begin acl
-##########################################################################
+
acl_check_spammers:
- accept hosts = +whitelist
+ accept hosts = +whitelist
+
drop message = Your host in blacklist on this server.
log_message = Host in blacklist
hosts = +spammers
- deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text
- dnslists = ${readfile {/etc/exim/dnsbl.conf}{:}}
+
accept
+
acl_check_mail:
- deny
- condition = ${if eq{$sender_helo_name}{}}
+ deny condition = ${if eq{$sender_helo_name}{}}
message = HELO required before MAIL
-# drop
-# condition = ${if isip{$sender_helo_name}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
+
drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}}
condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}}
delay = 45s
-# drop
-# condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
-# condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
- drop
- condition = ${if isip{$sender_helo_name}}
+
+ drop condition = ${if isip{$sender_helo_name}}
message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
-# drop
-# condition = ${if match{$sender_helo_name}{\N\.$\N}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
-# drop message = "REJECTED - Bad HELO - Host impersonating [$sender_helo_name]"
-# condition = ${if match{$sender_helo_name}{$primary_hostname}}
+
drop condition = ${if eq{[$interface_address]}{$sender_helo_name}}
message = $interface_address is _my_ address
+
accept
@@ -102,6 +101,10 @@ acl_check_rcpt:
accept authenticated = *
control = submission/domain=
+ deny message = Rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text
+ hosts = !+whitelist
+ dnslists = ${readfile {/etc/exim/dnsbl.conf}{:}}
+
require message = relay not permitted
domains = +local_domains : +relay_to_domains
@@ -113,27 +116,30 @@ acl_check_rcpt:
.ifdef CLAMD
warn set acl_m0 = no
+
warn condition = ${if exists {/etc/exim/domains/$domain/antivirus}{yes}{no}}
set acl_m0 = yes
.endif
+
.ifdef SPAMASSASSIN
warn set acl_m1 = no
+
warn condition = ${if exists {/etc/exim/domains/$domain/antispam}{yes}{no}}
set acl_m1 = yes
.endif
+
accept
acl_check_data:
.ifdef CLAMD
- deny message = Message contains a virus ($malware_name) and has been rejected
+ deny message = Message contains a virus ($malware_name) and has been rejected
malware = *
condition = ${if eq{$acl_m0}{yes}{yes}{no}}
.endif
.ifdef SPAMASSASSIN
- warn
- !authenticated = *
+ warn !authenticated = *
hosts = !+relay_from_hosts
condition = ${if < {$message_size}{100K}}
condition = ${if eq{$acl_m1}{yes}{yes}{no}}
@@ -142,23 +148,29 @@ acl_check_data:
add_header = X-Spam-Bar: $spam_bar
add_header = X-Spam-Report: $spam_report
set acl_m2 = $spam_score_int
- warn
- condition = ${if !eq{$acl_m2}{} {yes}{no}}
+
+ warn condition = ${if !eq{$acl_m2}{} {yes}{no}}
condition = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}}
add_header = X-Spam-Status: Yes
message = SpamAssassin detected spam (from $sender_address to $recipients).
.endif
+
accept
acl_check_mime:
- deny message = Blacklisted file extension detected
- condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+ deny message = Blacklisted file extension detected
+ condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+
accept
-##########################################################################
+
+
+######################################################################
+# AUTHENTICATION CONFIGURATION #
+######################################################################
begin authenticators
-##########################################################################
+
dovecot_plain:
driver = dovecot
public_name = PLAIN
@@ -171,9 +183,14 @@ dovecot_login:
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
-##########################################################################
+
+
+######################################################################
+# ROUTERS CONFIGURATION #
+# Specifies how addresses are handled #
+######################################################################
begin routers
-##########################################################################
+
#smarthost:
# driver = manualroute
# domains = ! +local_domains
@@ -253,9 +270,12 @@ terminate_alias:
condition = ${lookup{$local_part@$domain}lsearch{/etc/exim/domains/$domain/aliases}{true}{false}}
-##########################################################################
+
+######################################################################
+# TRANSPORTS CONFIGURATION #
+######################################################################
begin transports
-##########################################################################
+
remote_smtp:
driver = smtp
#helo_data = $sender_address_domain
@@ -265,7 +285,6 @@ remote_smtp:
dkim_canon = relaxed
dkim_strict = 0
-
procmail:
driver = pipe
command = "/usr/bin/procmail -d $local_part"
@@ -335,8 +354,23 @@ devnull:
driver = appendfile
file = /dev/null
-##########################################################################
+
+######################################################################
+# RETRY CONFIGURATION #
+######################################################################
begin retry
+
+# Address or Domain Error Retries
+# ----------------- ----- -------
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
-##########################################################################
+
+
+
+######################################################################
+# REWRITE CONFIGURATION #
+######################################################################
begin rewrite
+
+
+
+######################################################################
diff --git a/install/ubuntu/exim4.conf.template b/install/ubuntu/exim4.conf.template
index a5d353a3..742f0409 100644
--- a/install/ubuntu/exim4.conf.template
+++ b/install/ubuntu/exim4.conf.template
@@ -1,14 +1,18 @@
-##########################################################################
+######################################################################
+# #
+# Exim configuration file for Vesta Control Panel #
+# #
+######################################################################
+
#SPAMASSASSIN = yes
-SPAM_SCORE = 50
-CLAMD = yes
-##########################################################################
+#SPAM_SCORE = 50
+#CLAMD = yes
domainlist local_domains = dsearch;/etc/exim4/domains/
domainlist relay_to_domains = dsearch;/etc/exim4/domains/
-hostlist relay_from_hosts = 127.0.0.1
-hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf
-hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf
+hostlist relay_from_hosts = 127.0.0.1
+hostlist whitelist = net-iplsearch;/etc/exim4/white-blocks.conf
+hostlist spammers = net-iplsearch;/etc/exim4/spam-blocks.conf
no_local_from_check
untrusted_set_sender = *
acl_smtp_connect = acl_check_spammers
@@ -43,43 +47,38 @@ DKIM_FILE = /etc/exim4/domains/${lc:${domain:$h_from:}}/dkim.pem
DKIM_PRIVATE_KEY = ${if exists{DKIM_FILE}{DKIM_FILE}{0}}
-##########################################################################
+
+######################################################################
+# ACL CONFIGURATION #
+# Specifies access control lists for incoming SMTP mail #
+######################################################################
begin acl
-##########################################################################
+
acl_check_spammers:
- accept hosts = +whitelist
+ accept hosts = +whitelist
+
drop message = Your host in blacklist on this server.
log_message = Host in blacklist
hosts = +spammers
- deny message = rejected because $sender_host_address is in a black list at $dnslist_domain\\n$dnslist_text
- dnslists = ${readfile {/etc/exim4/dnsbl.conf}{:}}
+
accept
+
acl_check_mail:
- deny
- condition = ${if eq{$sender_helo_name}{}}
+ deny condition = ${if eq{$sender_helo_name}{}}
message = HELO required before MAIL
-# drop
-# condition = ${if isip{$sender_helo_name}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
+
drop message = Helo name contains a ip address (HELO was $sender_helo_name) and not is valid
condition = ${if match{$sender_helo_name}{\N((\d{1,3}[.-]\d{1,3}[.-]\d{1,3}[.-]\d{1,3})|([0-9a-f]{8})|([0-9A-F]{8}))\N}{yes}{no}}
condition = ${if match {${lookup dnsdb{>: defer_never,ptr=$sender_host_address}}\}{$sender_helo_name}{no}{yes}}
delay = 45s
-# drop
-# condition = ${if match{$sender_helo_name}{\N^\[\N}{no}{yes}}
-# condition = ${if match{$sender_helo_name}{\N\.\N}{no}{yes}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
- drop
- condition = ${if isip{$sender_helo_name}}
+
+ drop condition = ${if isip{$sender_helo_name}}
message = Access denied - Invalid HELO name (See RFC2821 4.1.3)
-# drop
-# condition = ${if match{$sender_helo_name}{\N\.$\N}}
-# message = Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
-# drop message = "REJECTED - Bad HELO - Host impersonating [$sender_helo_name]"
-# condition = ${if match{$sender_helo_name}{$primary_hostname}}
+
drop condition = ${if eq{[$interface_address]}{$sender_helo_name}}
message = $interface_address is _my_ address
+
accept
@@ -102,6 +101,10 @@ acl_check_rcpt:
accept authenticated = *
control = submission/domain=
+ deny message = Rejected because $sender_host_address is in a black list at $dnslist_domain\n$dnslist_text
+ hosts = !+whitelist
+ dnslists = ${readfile {/etc/exim4/dnsbl.conf}{:}}
+
require message = relay not permitted
domains = +local_domains : +relay_to_domains
@@ -113,27 +116,30 @@ acl_check_rcpt:
.ifdef CLAMD
warn set acl_m0 = no
+
warn condition = ${if exists {/etc/exim4/domains/$domain/antivirus}{yes}{no}}
set acl_m0 = yes
.endif
+
.ifdef SPAMASSASSIN
warn set acl_m1 = no
+
warn condition = ${if exists {/etc/exim4/domains/$domain/antispam}{yes}{no}}
set acl_m1 = yes
.endif
+
accept
acl_check_data:
.ifdef CLAMD
- deny message = Message contains a virus ($malware_name) and has been rejected
+ deny message = Message contains a virus ($malware_name) and has been rejected
malware = *
condition = ${if eq{$acl_m0}{yes}{yes}{no}}
.endif
.ifdef SPAMASSASSIN
- warn
- !authenticated = *
+ warn !authenticated = *
hosts = !+relay_from_hosts
condition = ${if < {$message_size}{100K}}
condition = ${if eq{$acl_m1}{yes}{yes}{no}}
@@ -142,23 +148,29 @@ acl_check_data:
add_header = X-Spam-Bar: $spam_bar
add_header = X-Spam-Report: $spam_report
set acl_m2 = $spam_score_int
- warn
- condition = ${if !eq{$acl_m2}{} {yes}{no}}
+
+ warn condition = ${if !eq{$acl_m2}{} {yes}{no}}
condition = ${if >{$acl_m2}{SPAM_SCORE} {yes}{no}}
add_header = X-Spam-Status: Yes
message = SpamAssassin detected spam (from $sender_address to $recipients).
.endif
+
accept
acl_check_mime:
- deny message = Blacklisted file extension detected
- condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+ deny message = Blacklisted file extension detected
+ condition = ${if match {${lc:$mime_filename}}{\N(\.ade|\.adp|\.bat|\.chm|\.cmd|\.com|\.cpl|\.exe|\.hta|\.ins|\.isp|\.jse|\.lib|\.lnk|\.mde|\.msc|\.msp|\.mst|\.pif|\.scr|\.sct|\.shb|\.sys|\.vb|\.vbe|\.vbs|\.vxd|\.wsc|\.wsf|\.wsh)$\N}{1}{0}}
+
accept
-##########################################################################
+
+
+######################################################################
+# AUTHENTICATION CONFIGURATION #
+######################################################################
begin authenticators
-##########################################################################
+
dovecot_plain:
driver = dovecot
public_name = PLAIN
@@ -171,9 +183,14 @@ dovecot_login:
server_socket = /var/run/dovecot/auth-client
server_set_id = $auth1
-##########################################################################
+
+
+######################################################################
+# ROUTERS CONFIGURATION #
+# Specifies how addresses are handled #
+######################################################################
begin routers
-##########################################################################
+
#smarthost:
# driver = manualroute
# domains = ! +local_domains
@@ -253,9 +270,12 @@ terminate_alias:
condition = ${lookup{$local_part@$domain}lsearch{/etc/exim4/domains/$domain/aliases}{true}{false}}
-##########################################################################
+
+######################################################################
+# TRANSPORTS CONFIGURATION #
+######################################################################
begin transports
-##########################################################################
+
remote_smtp:
driver = smtp
#helo_data = $sender_address_domain
@@ -265,7 +285,6 @@ remote_smtp:
dkim_canon = relaxed
dkim_strict = 0
-
procmail:
driver = pipe
command = "/usr/bin/procmail -d $local_part"
@@ -306,7 +325,7 @@ local_spam_delivery:
delivery_date_add
envelope_to_add
return_path_add
- directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.spam"
+ directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part/.Spam"
quota = ${extract{6}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}M
quota_directory = "${extract{5}{:}{${lookup{$local_part}lsearch{/etc/exim4/domains/$domain/passwd}}}}/mail/$domain/$local_part"
quota_warn_threshold = 75%
@@ -335,8 +354,24 @@ devnull:
driver = appendfile
file = /dev/null
-##########################################################################
+
+
+######################################################################
+# RETRY CONFIGURATION #
+######################################################################
begin retry
+
+# Address or Domain Error Retries
+# ----------------- ----- -------
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
-##########################################################################
+
+
+
+######################################################################
+# REWRITE CONFIGURATION #
+######################################################################
begin rewrite
+
+
+
+######################################################################
diff --git a/install/vst-install-debian.sh b/install/vst-install-debian.sh
index f3a7eacd..abe0a8ca 100644
--- a/install/vst-install-debian.sh
+++ b/install/vst-install-debian.sh
@@ -233,9 +233,6 @@ if [ -z $email ]; then
if [ -z "$servername" ]; then
read -p "Please enter hostname [$(hostname)]: " servername
fi
- if [ -z "$servername" ]; then
- servername=$(hostname)
- fi
fi
# Validate email
@@ -464,6 +461,9 @@ if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
fi
# Set server hostname
+if [ -z "$servername" ]; then
+ servername=$(hostname)
+fi
/usr/local/vesta/bin/v-change-sys-hostname $servername 2>/dev/null
# Templates
@@ -627,9 +627,9 @@ fi
# Exim
wget $CHOST/$VERSION/exim4.conf.template -O /etc/exim4/exim4.conf.template
-if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
- sed -i "s/^SPAMASSASSIN/#SPAMASSASSIN/g" /etc/exim4/exim4.conf.template
- sed -i "s/^CLAMD/#CLAMD/g" /etc/exim4/exim4.conf.template
+if [ "$srv_type" != 'micro' ] && [ "$srv_type" != 'small' ]; then
+ sed -i "s/#SPAM/SPAM/g" /etc/exim4/exim4.conf.template
+ sed -i "s/#CLAMD/CLAMD/g" /etc/exim4/exim4.conf.template
fi
wget $CHOST/$VERSION/dnsbl.conf -O /etc/exim4/dnsbl.conf
wget $CHOST/$VERSION/spam-blocks.conf -O /etc/exim4/spam-blocks.conf
diff --git a/install/vst-install-rhel.sh b/install/vst-install-rhel.sh
index 54ef5174..5ddfaf4b 100644
--- a/install/vst-install-rhel.sh
+++ b/install/vst-install-rhel.sh
@@ -233,9 +233,6 @@ if [ -z $email ]; then
if [ -z "$servername" ]; then
read -p "Please enter hostname [$(hostname)]: " servername
fi
- if [ -z "$servername" ]; then
- servername=$(hostname)
- fi
fi
# Validate email
@@ -524,6 +521,9 @@ if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
fi
# Set server hostname
+if [ -z "$servername" ]; then
+ servername=$(hostname)
+fi
/usr/local/vesta/bin/v-change-sys-hostname $servername 2>/dev/null
# Templates
@@ -683,9 +683,9 @@ fi
# Exim
wget $CHOST/$VERSION/exim.conf -O /etc/exim/exim.conf
-if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
- sed -i "s/^SPAMASSASSIN/#SPAMASSASSIN/g" /etc/exim/exim.conf
- sed -i "s/^CLAMD/#CLAMD/g" /etc/exim/exim.conf
+if [ "$srv_type" != 'micro' ] && [ "$srv_type" != 'small' ]; then
+ sed -i "s/#SPAM/SPAM/g" /etc/exim/exim.conf
+ sed -i "s/#CLAMD/CLAMD/g" /etc/exim/exim.conf
fi
wget $CHOST/$VERSION/dnsbl.conf -O /etc/exim/dnsbl.conf
wget $CHOST/$VERSION/spam-blocks.conf -O /etc/exim/spam-blocks.conf
diff --git a/install/vst-install-ubuntu.sh b/install/vst-install-ubuntu.sh
index 74f4b4cf..4d99cb20 100644
--- a/install/vst-install-ubuntu.sh
+++ b/install/vst-install-ubuntu.sh
@@ -231,9 +231,6 @@ if [ -z $email ]; then
if [ -z "$servername" ]; then
read -p "Please enter hostname [$(hostname)]: " servername
fi
- if [ -z "$servername" ]; then
- servername=$(hostname)
- fi
fi
# Validate email
@@ -462,6 +459,9 @@ if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
fi
# Set server hostname
+if [ -z "$servername" ]; then
+ servername=$(hostname)
+fi
/usr/local/vesta/bin/v-change-sys-hostname $servername 2>/dev/null
# Templates
@@ -634,9 +634,9 @@ fi
# Exim
wget $CHOST/$VERSION/exim4.conf.template -O /etc/exim4/exim4.conf.template
-if [ "$srv_type" = 'micro' ] || [ "$srv_type" = 'small' ]; then
- sed -i "s/^SPAMASSASSIN/#SPAMASSASSIN/g" /etc/exim4/exim4.conf.template
- sed -i "s/^CLAMD/#CLAMD/g" /etc/exim4/exim4.conf.template
+if [ "$srv_type" != 'micro' ] && [ "$srv_type" != 'small' ]; then
+ sed -i "s/#SPAM/SPAM/g" /etc/exim4/exim4.conf.template
+ sed -i "s/#CLAMD/CLAMD/g" /etc/exim4/exim4.conf.template
fi
wget $CHOST/$VERSION/dnsbl.conf -O /etc/exim4/dnsbl.conf
wget $CHOST/$VERSION/spam-blocks.conf -O /etc/exim4/spam-blocks.conf
diff --git a/web/add/cron/autoupdate/index.php b/web/add/cron/autoupdate/index.php
index c3866579..53d50c05 100644
--- a/web/add/cron/autoupdate/index.php
+++ b/web/add/cron/autoupdate/index.php
@@ -7,7 +7,7 @@ include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
if ($_SESSION['user'] == 'admin') {
exec (VESTA_CMD."v-add-cron-vesta-autoupdate", $output, $return_var);
- $_SESSION['error_msg'] = __('Autoupdate has been susscessfully enabled');
+ $_SESSION['error_msg'] = __('Autoupdate has been successfully enabled');
unset($output);
}
diff --git a/web/delete/cron/autoupdate/index.php b/web/delete/cron/autoupdate/index.php
index 14d29785..ad670ef0 100644
--- a/web/delete/cron/autoupdate/index.php
+++ b/web/delete/cron/autoupdate/index.php
@@ -7,7 +7,7 @@ include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
if ($_SESSION['user'] == 'admin') {
exec (VESTA_CMD."v-delete-cron-vesta-autoupdate", $output, $return_var);
- $_SESSION['error_msg'] = __('Autoupdate has been susscessfully disabled');
+ $_SESSION['error_msg'] = __('Autoupdate has been successfully disabled');
unset($output);
}
diff --git a/web/inc/i18n/fi.php b/web/inc/i18n/fi.php
new file mode 100644
index 00000000..c0b4b0b3
--- /dev/null
+++ b/web/inc/i18n/fi.php
@@ -0,0 +1,445 @@
+ 'Paketit',
+ 'IP' => 'IP',
+ 'Graphs' => 'Kuvaajat',
+ 'Statistics' => 'Tilastot',
+ 'Log' => 'Loki',
+ 'Services' => 'Palvelut',
+ 'Updates' => 'Päivitykset',
+ 'Log in' => 'Kirjaudu',
+ 'Log out' => 'Kirjaudu ulos',
+
+ 'USER' => 'TILIT',
+ 'WEB' => 'WEB',
+ 'DNS' => 'DNS',
+ 'MAIL' => 'MAIL',
+ 'DB' => 'DB',
+ 'CRON' => 'CRON',
+ 'BACKUP' => 'BACKUP',
+
+ 'Add User' => 'Lisää käyttäjä',
+ 'Add Domain' => 'Lisää domaini',
+ 'Add Web Domain' => 'Lisää Web domain',
+ 'Add DNS Domain' => 'Lisää DNS domain',
+ 'Add DNS Record' => 'Lisää DNS asetus',
+ 'Add Mail Domain' => 'Lisää email domain',
+ 'Add Mail Account' => 'Lisää email käyttäjä',
+ 'Add Database' => 'Lisää tietokanta',
+ 'Add Cron Job' => 'Lisää Cron-tehtävä',
+ 'Create Backup' => 'Luo varmuuskopio',
+ 'Configure' => 'Määritä',
+ 'Restore All' => 'Palauta kaikki',
+ 'Add Package' => 'Lisää paketti',
+ 'Add IP' => 'Lisää IP',
+ 'Search' => 'Haku',
+ 'Overall Statistics' => 'Kokonaistilastot',
+ 'Daily' => 'Päivä',
+ 'Weekly' => 'Viikko',
+ 'Monthly' => 'Kuukausi',
+ 'Yearly' => 'Vuosi',
+ 'Add' => 'Lisää',
+ 'Back' => 'Takaisin',
+ 'Save' => 'Tallenna',
+ 'Submit' => 'Lähetä',
+
+ 'toggle all' => 'vaihda kaikki',
+ 'apply to selected' => 'toteuta valituissa',
+ 'rebuild' => 'palauta',
+ 'rebuild web' => 'palauta web',
+ 'rebuild dns' => 'palauta dns',
+ 'rebuild mail' => 'palauta sähköposti',
+ 'rebuild db' => 'palauta tietokanta',
+ 'rebuild cron' => 'palauta cron',
+ 'update counters' => 'päivitä laskurit',
+ 'suspend' => 'keskeytä',
+ 'unsuspend' => 'palauta',
+ 'delete' => 'poista',
+ 'show per user' => 'näytä per käyttäjä',
+ 'login as' => 'kirjaudu sisään käyttäjänä',
+ 'logout' => 'kirjaudu ulos',
+ 'edit' => 'muokkaa',
+ 'open webstats' => 'avaa webtilastot',
+ 'view logs' => 'näytä lokit',
+ 'list records' => 'listaa %s tietuetta',
+ 'add record' => 'lisää tietue',
+ 'list accounts' => 'listaa %s käyttäjää',
+ 'add account' => 'lisää käyttäjä',
+ 'open webmail' => 'avaa webmail',
+ 'open %s' => 'avaa %s',
+ 'download' => 'lataa',
+ 'restore' => 'palauta',
+ 'configure restore settings' => 'määritä palautusasetukset',
+ 'stop' => 'pysäytä',
+ 'start' => 'käynnistä',
+ 'restart' => 'käynnistä uudelleen',
+ 'update' => 'päivitä',
+ 'generate' => 'generoi',
+ 'Generate CSR' => 'generoi CSR',
+ 'reread IP' => 'lue IP uudelleen',
+ 'enable autoupdate' => 'päivitä automaattisesti',
+ 'disable autoupdate' => 'älä päivitä automaattisesti',
+
+ 'Adding User' => 'Lisätään käyttäjää',
+ 'Editing User' => 'Muokataan käyttäjää',
+ 'Adding Domain' => 'Lisätään domainia',
+ 'Editing Domain' => 'Muokataan domainia',
+ 'Adding DNS Domain' => 'Lisätään DNS-domainia',
+ 'Editing DNS Domain' => 'Muokataan DNS-domainia',
+ 'Adding DNS Record' => 'Lisätään DNS-tietuetta',
+ 'Editing DNS Record' => 'Muokataan DNS-tietuetta',
+ 'Adding Mail Domain' => 'Lisätään sähköpostidomainia',
+ 'Editing Mail Domain' => 'Muokataan sähköpostidomainia',
+ 'Adding Mail Account' => 'Lisätään sähköpostitiliä',
+ 'Editing Mail Account' => 'Muokataan sähköpostitiliä',
+ 'Adding database' => 'Lisätään tietokantaa',
+ 'Editing Cron Job' => 'Muokataan Cron-tehtävää',
+ 'Adding Cron Job' => 'Lisätään Cron-tehtävää',
+ 'Editing Database' => 'Muokataan tietokantaa',
+ 'Adding Package' => 'Lisätään pakettia',
+ 'Editing Package' => 'Muokataan pakettia',
+ 'Adding IP address' => 'Lisätään IP-osoitetta',
+ 'Editing IP Address' => 'Muokataan IP-osoitetta',
+ 'Editing Backup Exclusions' => 'Muokataan Varmuuskopioiden poikkeuksia',
+ 'Generating CSR' => 'Generoidaan CSR',
+ 'Listing' => 'Listataan',
+ 'Search Results' => 'Hakutulokset',
+
+ 'active' => 'aktiivinen',
+ 'spnd' => 'keskeytetty',
+ 'suspended' => 'keskeytetty',
+ 'running' => 'käynnissä',
+ 'stopped' => 'pysäytetty',
+ 'outdated' => 'vanhentunut',
+ 'updated' => 'päivitetty',
+
+ 'yes' => 'kyllä',
+ 'no' => 'ei',
+ 'none' => 'ei mitään',
+ 'pb' => 'pb', //petatavu
+ 'tb' => 'tb', //teratavu
+ 'gb' => 'gb', //gigatavu
+ 'mb' => 'mb', //megatavu
+ 'minute' => 'minuutti',
+ 'hour' => 'tunti',
+ 'day' => 'päivä',
+ 'days' => 'päivää',
+ 'hours' => 'tuntia',
+ 'minutes' => 'minuuttia',
+ 'month' => 'kuukautta',
+ 'package' => 'paketti',
+ 'traffic' => 'tiedonsiirto',
+ 'disk' => 'levytila',
+ 'Bandwidth' => 'Kaistanleveys',
+ 'Disk' => 'Levy',
+ 'Web' => 'Web',
+ 'Mail' => 'Sähköposti',
+ 'Databases' => 'Tietokannat',
+ 'User Directories' => 'Käyttäjähakemistot',
+ 'Template' => 'Pohja',
+ 'Web Template' => 'Apache-pohja',
+ 'Proxy Template' => 'Nginx-pohja',
+ 'DNS Template' => 'DNS-pohja',
+ 'Web Domains' => 'Web-domainit',
+ 'SSL Domains' => 'SSL-domainit',
+ 'Web Aliases' => 'Web-aliakset',
+ 'per domain' => 'per domaini',
+ 'DNS domains' => 'DNS-domainit',
+ 'DNS records' => 'DNS-tietueet',
+ 'Name Servers' => 'Nimipalvelimet',
+ 'Mail Domains' => 'Sähköpostidomainit',
+ 'Mail Accounts' => 'Sähköpostikäyttäjät',
+ 'Cron Jobs' => 'Cron-tehtävät',
+ 'SSH Access' => 'SSH-oikeudet',
+ 'IP Addresses' => 'IP-osoitteet',
+ 'Backups' => 'Varmuuskopiot',
+ 'Backup System' => 'Varmuuskopioi järjestelmä',
+ 'backup exclusions' => 'varmuuskopioinnin poikkeukset',
+ 'template' => 'pohjat',
+ 'SSL Support' => 'SSL-tuki',
+ 'SSL Home Directory' => 'SSL-kotihakemisto',
+ 'Proxy Support' => 'Nginx tuki',
+ 'Proxy Extensions' => 'Nginx laajennukset',
+ 'Web Statistics' => 'Webtilastot',
+ 'Additional FTP Account' => 'Ylimääräinen FTP-tili',
+ 'SOA' => 'SOA',
+ 'TTL' => 'TTL',
+ 'Expire' => 'Päättyy',
+ 'Records' => 'Tietueet',
+ 'Catchall email' => 'Catchall-sähköposti',
+ 'AntiVirus Support' => 'AntiVirus-tuki',
+ 'AntiSpam Support' => 'AntiSpam-tuki',
+ 'DKIM Support' => 'DKIM-tuki',
+ 'Accounts' => 'Tilit',
+ 'Quota' => 'Kiintiö',
+ 'Autoreply' => 'Automaattinen vastaus',
+ 'Forward to' => 'Uudelleenohjaa',
+ 'Do not store forwarded mail' => 'Älä säilytä uudelleenohjattuja viestejä',
+ 'database' => 'tietokanta',
+ 'User' => 'Käyttäjä',
+ 'Host' => 'Host',
+ 'Charset' => 'Merkistö',
+ 'Min' => 'Min',
+ 'Hour' => 'Tunti',
+ 'Day' => 'Päivä',
+ 'Month' => 'Kuukausi',
+ 'Day of week' => 'Viikonpäivä',
+ 'local' => 'paikallinen',
+ 'Run Time' => 'Run Time',
+ 'Backup Size' => 'Varmuuskopion koko',
+ 'SYS' => 'SYS',
+ 'Domains' => 'Domainit',
+ 'Status' => 'Tila',
+ 'shared' => 'jaetut',
+ 'dedicated' => 'dedicated',
+ 'Owner' => 'Omistaja',
+ 'Users' => 'Käyttäjät',
+ 'Load Average' => 'Keskimääräinen Käyttöaste',
+ 'Memory Usage' => 'Muistinkäyttö',
+ 'HTTPD Usage' => 'HTTPD-käyttö',
+ 'NGINX Usage' => 'NGINX-käyttö',
+ 'APACHE2 Usage' => 'APACHE2-käyttö',
+ 'MySQL Usage on localhost' => 'MySQL-käyttö @ localhost',
+ 'PostgreSQL Usage on localhost' => 'PostgreSQL-käyttö @ localhost',
+ 'Bandwidth Usage eth0' => 'Kaistankäyttö eth0',
+ 'Bandwidth Usage eth1' => 'Kaistankäyttö eth1',
+ 'FTP Usage' => 'FTP-käyttö',
+ 'SSH Usage' => 'SSH-käyttö',
+ 'reverse proxy' => 'reverse proxy',
+ 'web server' => 'web-palvelin',
+ 'dns server' => 'dns-palvelin',
+ 'mail server' => 'sähköpostipalvelin',
+ 'pop/imap server' => 'pop/imap-palvelin',
+ 'email antivirus' => 'sähköpostin antivirus',
+ 'email antispam' => 'sähköpostin antispam',
+ 'database server' => 'tietokantapalvelin',
+ 'ftp server' => 'ftp-palvelin',
+ 'job scheduler' => 'job scheduler', //no-idea
+ 'CPU' => 'Prosessori',
+ 'Memory' => 'Muisti',
+ 'Uptime' => 'Käyttöaika',
+ 'core package' => 'core-paketti',
+ 'php interpreter' => 'php-tulkki',
+ 'internal web server' => 'sisäinen web-palvelin',
+ 'Version' => 'Versio',
+ 'Release' => 'Julkaisu',
+ 'Architecture' => 'Arkkitehtuuri',
+ 'Object' => 'Objekti',
+ 'Owner' => 'Omistaja',
+ 'Username' => 'Käyttäjä',
+ 'Password' => 'Salasana',
+ 'Email' => 'Sähköposti',
+ 'Package' => 'Paketti',
+ 'Language' => 'Kieli',
+ 'First Name' => 'Etunimi',
+ 'Last Name' => 'Sukunimi',
+ 'Send login credentials to email address' => 'Lähetä kirjautumistiedot sähköpostilla.',
+ 'Default Template' => 'Oletuspohja',
+ 'Default Name Servers' => 'Oletusnimipalvelimet',
+ 'Domain' => 'Domain',
+ 'DNS Support' => 'Tarvitsee DNS:n',
+ 'Mail Support' => 'Tarvitsee Sähköpostin',
+ 'Advanced options' => 'Lisäasetukset',
+ 'Aliases' => 'Aliakset',
+ 'SSL Certificate' => 'SSL-sertifikaatti',
+ 'SSL Key' => 'SSL-avain',
+ 'SSL Certificate Authority / Intermediate' => 'SSL Certificate Authority / Intermediate', //no-idea
+ 'SSL CSR' => 'SSL CSR',
+ 'optional' => 'valinnainen',
+ 'internal' => 'sisäinen',
+ 'Statistics Authorization' => 'Tilastoinnin valtuutus',
+ 'Statistics Auth' => 'Tilastoinnin Auth',
+ 'Account' => 'Tili',
+ 'Prefix will be automaticaly added to username' => 'Etuliite %s lisätään automaattisesti käyttäjänimeen.',
+ 'Send FTP credentials to email' => 'Lähetä FTP-kirjautumistiedot sähköpostilla',
+ 'Expiration Date' => 'Viimeinen käyttöpäivä',
+ 'YYYY-MM-DD' => 'YYYY-MM-DD',
+ 'Name servers' => 'Nimipalvelimet',
+ 'Record' => 'Tietue',
+ 'IP or Value' => 'IP or Value', //no-idea
+ 'Priority' => 'Prioriteetti',
+ 'Record Number' => 'Tietueen numero',
+ 'in megabytes' => 'megatavuissa',
+ 'Message' => 'Viesti',
+ 'use local-part' => 'use local-part', //no-idea
+ 'one or more email addresses' => 'yksi tai useampia sähköposteja',
+ 'Prefix will be automaticaly added to database name and database user' => 'Etuliite %s lisätään automaattisesti tietokannan nimeen ja käyttäjään',
+ 'Database' => 'Tietokanta',
+ 'Type' => 'Tyyppi',
+ 'Minute' => 'Minuutti',
+ 'Command' => 'Käsky',
+ 'Package Name' => 'Paketin nimi',
+ 'Netmask' => 'Netmask', //no-idea
+ 'Interface' => 'Interface', //no-idea
+ 'Shared' => 'Jaettu',
+ 'Assigned user' => 'Assigned user',
+ 'Assigned domain' => 'Assigned domain',
+ 'NAT IP association' => 'NAT IP association', //no-idea
+ 'shell' => 'shell',
+ 'web domains' => 'web-domainit',
+ 'web aliases' => 'web-aliakset',
+ 'dns records' => 'dns-tietueet',
+ 'mail domains' => 'sähköpostidomainit',
+ 'mail accounts' => 'sähköpostitilit',
+ 'accounts' => 'tilit',
+ 'databases' => 'tietokannat',
+ 'cron jobs' => 'cron-tehtävät',
+ 'backups' => 'varmuuskopiot',
+ 'quota' => 'kiintiö',
+ 'day of week' => 'viikonpäivä',
+ 'cmd' => 'cmd',
+ 'users' => 'käyttäjät',
+ 'domains' => 'domainit',
+ 'aliases' => 'aliakset',
+ 'records' => 'tietueet',
+ 'jobs' => 'tehtävät',
+ 'username' => 'käyttäjänimi',
+ 'password' => 'salasana',
+ 'type' => 'tyyppi',
+ 'charset' => 'charset',
+ 'domain' => 'domain',
+ 'ip' => 'ip',
+ 'ip address' => 'ip-osoite',
+ 'IP address' => 'IP-osoite',
+ 'netmask' => 'netmask',
+ 'interface' => 'interface',
+ 'assigned user' => 'omistaja',
+ 'ns1' => 'ns1',
+ 'ns2' => 'ns2',
+ 'user' => 'käyttäjä',
+ 'email' => 'sähköposti',
+ 'first name' => 'etunimi',
+ 'last name' => 'sukunimi',
+ 'account' => 'tili',
+ 'ssl certificate' => 'ssl-sertifikaatti',
+ 'ssl key' => 'ssl-avain',
+ 'stats user password' => 'tilastoinnin käyttäjän salasana',
+ 'stats username' => 'tilastoinnin käyttäjä',
+ 'stats password' => 'tilastoinnin salasana',
+ 'ftp user password' => 'ftp-käyttäjän salasana',
+ 'ftp user' => 'ftp-käyttäjä',
+ 'Last 70 lines of %s.%s.log' => '%s 70 viimeistä lokimerkintää.%s.log',
+ 'Download AccessLog' => 'Lataa AccessLog',
+ 'Download ErrorLog' => 'Lataa Virheloki',
+ 'Country' => 'Maa',
+ '2 letter code' => '2 kirjaimen lyhenne',
+ 'State / Province' => 'Osavaltio / Maakunta',
+ 'City / Locality' => 'Kaupunki / Paikkakunta',
+ 'Organization' => 'Organisaatio',
+
+ '1 account' => '1 tili',
+ '%s accounts' => '%s tiliä',
+ '1 domain' => '1 domain',
+ '%s domains' => '%s domainia',
+ '1 record' => '1 tietue',
+ '%s records' => '%s tietuetta',
+ '1 mail account' => '1 sähköpostitili',
+ '%s mail accounts' => '%s sähköpostitiliä',
+ '1 database' => '1 tietokanta',
+ '%s databases' => '%s tietokantaa',
+ '1 cron job' => '1 cron-tehtävä',
+ '%s cron jobs' => '%s cron-tehtävää',
+ '1 archive' => '1 archive',
+ '%s archives' => '%s archives',
+ '1 package' => '1 paketti',
+ '%s packages' => '%s pakettia',
+ '1 IP address' => '1 IP-osoite',
+ '%s IP addresses' => '%s IP-osoitetta',
+ '1 month' => '1 kuukausi',
+ '%s months' => '%s kuukautta',
+ '1 log record' => '1 lokimerkintä',
+ '%s log records' => '%s lokimerkintää',
+ '1 object' => '1 objekti',
+ '%s objects' => '%s objektia',
+ 'no exclusions' => 'ei poikkeuksia',
+
+ 'USER_CREATED_OK' => 'Käyttäjä %s lisättiin onnistuneesti',
+ 'WEB_DOMAIN_CREATED_OK' => 'Domain %s lisättiin onnistuneesti.',
+ 'DNS_DOMAIN_CREATED_OK' => 'DNS-domain %s lisättiin onnistuneesti.',
+ 'DNS_RECORD_CREATED_OK' => 'Tietue %s.%s lisättiin onnistuneesti.',
+ 'MAIL_DOMAIN_CREATED_OK' => 'Sähköpostidomain %s lisättiin onnistuneesti.',
+ 'MAIL_ACCOUNT_CREATED_OK' => 'Sähköpostitili %s@%s lisättiin onnistuneesti.',
+ 'DATABASE_CREATED_OK' => 'Tietokanta %s lisättiin onnistuneesti.',
+ 'CRON_CREATED_OK' => 'Cron-tehtävä lisättiin onnistuneesti.',
+ 'IP_CREATED_OK' => 'IP-osoite %s lisättiin onnistuneesti.',
+ 'PACKAGE_CREATED_OK' => 'Paketti %s lisättiin onnistuneesti.',
+ 'SSL_GENERATED_OK' => 'Sertifikaatti lisättiin onnistuneesti.',
+ 'Autoupdate has been successfully enabled' => 'Automaattinen päivitys otettu käyttöön',
+ 'Autoupdate has been successfully disabled' => 'Automaattinen päivitys poistettu käytöstä',
+ 'Changes has been saved.' => 'Muutokset tallennettu.',
+ 'Confirmation' => 'Hyväksyntä',
+ 'DELETE_USER_CONFIRMATION' => 'Haluatko varmasti poistaa käyttäjän %s?',
+ 'SUSPEND_USER_CONFIRMATION' => 'Haluatko varmasti keskeyttää käyttäjän %s?',
+ 'UNSUSPEND_USER_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön käyttäjän %s?',
+ 'DELETE_DOMAIN_CONFIRMATION' => 'Haluatko varmasti poistaa domainin %s?',
+ 'SUSPEND_DOMAIN_CONFIRMATION' => 'Haluatko varmasti keskeyttää domainin %s?',
+ 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön domainin %s?',
+ 'DELETE_RECORD_CONFIRMATION' => 'Haluatko varmasti poistaa tietueen %s?',
+ 'SUSPEND_RECORD_CONFIRMATION' => 'Haluatko varmasti keskeyttää tietueen %s?',
+ 'UNSUSPEND_RECORD_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön tietueen %s?',
+ 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Haluatko varmasti poistaa %s?',
+ 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Haluatko varmasti keskeyttää %s?',
+ 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön %s?',
+ 'DELETE_DATABASE_CONFIRMATION' => 'Haluatko varmasti poistaa tietokannan %s?',
+ 'SUSPEND_DATABASE_CONFIRMATION' => 'Haluatko varmasti keskeyttää tietokannan %s?',
+ 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön tietokannan %s?',
+ 'DELETE_CRON_CONFIRMATION' => 'Haluatko varmasti poistaa cron-tehtävän?',
+ 'SUSPEND_CRON_CONFIRMATION' => 'Haluatko varmasti keskeyttää cron-tehtävän?',
+ 'UNSUSPEND_CRON_CONFIRMATION' => 'Haluatko varmasti ottaa käyttöön cron-tehtävän?',
+ 'DELETE_BACKUP_CONFIRMATION' => 'Haluatko varmasti poistaa %s varmuuskopion?',
+ 'DELETE_EXCLUSION_CONFIRMATION' => 'Haluatko varmasti poistaa %s poikkeuksen?',
+ 'DELETE_PACKAGE_CONFIRMATION' => 'Haluatko varmasti poistaa paketin %s?',
+ 'DELETE_IP_CONFIRMATION' => 'Haluatko varmasti poistaa IP-osoitteen %s?',
+ 'Welcome' => 'Tervetuloa',
+ 'LOGGED_IN_AS' => 'Kirjautunut käyttäjänä %s',
+ 'Error' => 'Virhe',
+ 'Invalid username or password' => 'Väärä käyttäjänimi tai salasana',
+ 'Invalid username or code' => 'Väärä käyttäjänimi tai koodi',
+ 'Passwords not match' => 'Salasanat eivät täsmää',
+ 'Please enter valid email address.' => 'Syötä toimiva sähköpostiosoite.',
+ 'Field "%s" can not be blank.' => 'Kenttä "%s" ei voi olla tyhjä.',
+ 'Password is too short.' => 'Salasana on liian lyhyt (min. 6 merkkiä)',
+ 'Error code:' => 'Virhekoodi: %s',
+ 'SERVICE_ACTION_FAILED' => '"%s" "%s" epäonnistui',
+ 'IP address is in use' => 'IP-osoite on käytössä',
+ 'BACKUP_SCHEDULED' => 'Tehtävä on lisätty jonoon. Saat sähköpostin kun varmuuskopiosi on valmis ladattavaksi.',
+ 'BACKUP_EXISTS' => 'Aikaisempi varmuuskopiointi on vielä käynnissä, odota kunnes se päättyy.',
+ 'RESTORE_SCHEDULED' => 'Tehtävä on lisätty jonoon. Saat sähköpostin kun varmuuskopiosi on valmis ladattavaksi.',
+ 'RESTORE_EXISTS' => 'Aikaisempi palautus on vielä käynnissä, odota kunnes se päättyy.',
+
+ 'WEB_EXCLUSIONS' => "Syötä domainin nimi, yksi per rivi. Syötä '*', jos haluat ohittaa kaikki domainit. Ohittaksesi pois tiettyjä hakemistoja käytä seuraavaa rakennetta: domain.com:public_html/cache:public_html/tmp",
+ 'DNS_EXCLUSIONS' => "Syötä domainin nimi, yksi per rivi. Syötä '*', jos haluat ohittaa kaikki domainit.",
+ 'MAIL_EXCLUSIONS' => "Syötä domainin nimi, yksi per rivi. Syötä '*', jos haluat ohittaa kaikki domainit. Ohittaksesi pois tiettyjä hakemistoja käytä seuraavaa rakennetta: domain.com:info:support:postmaster",
+ 'DB_EXCLUSIONS' => "Syötä koko tietokannan nimi, yksi per rivi. Syötä '*', jos haluat ohittaa kaikki tietokannat.",
+ 'CRON_EXCLUSIONS' => "Ohittaaksesi kaikki tehtävät käytä '*'",
+ 'USER_EXCLUSIONS' => "Syötä kansion nimi, yksi per rivi. Ohittaaksesi kaikki tietokannat syötä '*'",
+
+ 'Welcome to Vesta Control Panel' => 'Tervetuloa Vesta Hallintapaneeliin',
+ 'MAIL_FROM' => 'Vesta Hallintapaneeli ',
+ 'GREETINGS_GORDON_FREEMAN' => "Morjens, %s %s,\n",
+ 'GREETINGS' => "Morjens,\n",
+ 'ACCOUNT_READY' => "Käyttätilisi on luotu ja odottaa innokkaasti ensimmäistä kirjautumista.\n\nhttps://%s/login/\nKäyttäjä: %s\nSalasana: %s\n\n--\nVesta Hallintapaneeli\n",
+
+ 'FTP login credentials' => 'FTP-tilitiedot',
+ 'FTP_ACCOUNT_READY' => "FTP-tili on luotu ja odottaa innokkaasti ensimmäistä kirjautumista.\n\nHostname: %s\nKäyttäjä: %s_%s\nSalasana: %s\n\n--\nVesta Hallintapaneeli\n",
+
+ 'Database Credentials' => 'Tietokannan-tilitiedot',
+ 'DATABASE_READY' => "Tietokanta on luotu onnistuneesti.\n\nTietokanta: %s\nKäyttäjä: %s\nSalasana: %s\n%s\n\n--\nVesta Hallintapaneeli\n",
+
+ 'forgot password' => 'unohditko salasanan?',
+ 'Confirm' => 'Hyväksy',
+ 'New Password' => 'Uusi salasana',
+ 'Confirm Password' => 'Hyväksy salasana',
+ 'Reset' => 'Nollaa',
+ 'Reset Code' => 'Nollauskoodi',
+ 'RESET_NOTICE' => '',
+ 'RESET_CODE_SENT' => 'Salasanan nollauskoodi on lähetetty sähköpostiisi
',
+ 'MAIL_RESET_SUBJECT' => 'Salana vaihdettiin %s',
+ 'PASSWORD_RESET_REQUEST' => "Nollataksesi hallintapaneelin salasanan, seuraa tätä linkkiä:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nVaihtoehtoisesti voit mennä https://%s/reset/?action=code&user=%s ja syöttää nollauskoodin:\n%s\n\nJos et varta vasten pyytänyt tätä salasananvaihtoa, mene paniikkiin ja ota yhteyttä ylläpitoon.\n\n--\nVesta Hallintapaneeli\n",
+);
diff --git a/web/inc/i18n/fr.php b/web/inc/i18n/fr.php
new file mode 100644
index 00000000..35a5e592
--- /dev/null
+++ b/web/inc/i18n/fr.php
@@ -0,0 +1,443 @@
+ 'Paquets',
+ 'IP' => 'IP',
+ 'Graphs' => 'Graphs',
+ 'Statistics' => 'Statistiques',
+ 'Log' => 'Log',
+ 'Services' => 'Services',
+ 'Updates' => 'Mises-à-jour',
+ 'Log in' => 'Connexion',
+ 'Log out' => 'Déconnexion',
+
+ 'USER' => 'USER',
+ 'WEB' => 'WEB',
+ 'DNS' => 'DNS',
+ 'MAIL' => 'MAIL',
+ 'DB' => 'DB',
+ 'CRON' => 'CRON',
+ 'BACKUP' => 'BACKUP',
+
+ 'Add User' => 'Ajouter un Utilisateur',
+ 'Add Domain' => 'Ajouter un Domaine',
+ 'Add Web Domain' => 'Ajouter un Domaine',
+ 'Add DNS Domain' => 'Ajouter un DNS',
+ 'Add DNS Record' => 'Ajouter un Enregistrement DNS',
+ 'Add Mail Domain' => 'Ajouter un Domaine',
+ 'Add Mail Account' => 'Ajouter un Compte',
+ 'Add Database' => 'Ajouter une BDD',
+ 'Add Cron Job' => 'Ajouter une Tâche',
+ 'Create Backup' => 'Créer un Backup',
+ 'Configure' => 'Configurer',
+ 'Restore All' => 'Restaurer Tout',
+ 'Add Package' => 'Ajouter un Paquet',
+ 'Add IP' => 'Ajouter une IP',
+ 'Search' => 'Rechercher',
+ 'Overall Statistics' => 'Statistiques Générales',
+ 'Daily' => 'Quotidien',
+ 'Weekly' => 'Hebdomadaire',
+ 'Monthly' => 'Mensuel',
+ 'Yearly' => 'Annuel',
+ 'Add' => 'Ajouter',
+ 'Back' => 'Retour',
+ 'Save' => 'Sauvegarde',
+ 'Submit' => 'Envoyer',
+
+ 'toggle all' => 'selectionner tout',
+ 'apply to selected' => 'appliquer à la sélection',
+ 'rebuild' => 'recréer',
+ 'rebuild web' => 'recréer web',
+ 'rebuild dns' => 'recréer dns',
+ 'rebuild mail' => 'recréer mail',
+ 'rebuild db' => 'recréer db',
+ 'rebuild cron' => 'recréer cron',
+ 'update counters' => 'mettre-à-jour les totaux',
+ 'suspend' => 'suspendre',
+ 'unsuspend' => 'réactiver',
+ 'delete' => 'supprimer',
+ 'show per user' => 'voir par utilisateur',
+ 'login as' => 'connexion en tant que',
+ 'logout' => 'déconnexion',
+ 'edit' => 'éditer',
+ 'open webstats' => 'ouvrir les statistiques web',
+ 'view logs' => 'voir les logs',
+ 'list records' => '%s enregistrements listés',
+ 'add record' => 'ajouter un enregistrement',
+ 'list accounts' => '%s comptes listés',
+ 'add account' => 'ajouter un compte',
+ 'open webmail' => 'ouvrir le webmail',
+ 'open %s' => 'ouvrir %s',
+ 'download' => 'télécharger',
+ 'restore' => 'restaurer',
+ 'configure restore settings' => 'configurer les paramètres de restauration',
+ 'stop' => 'stop',
+ 'start' => 'démarrer',
+ 'restart' => 'redémarrer',
+ 'update' => 'mettre-à-jour',
+ 'generate' => 'générer',
+ 'Generate CSR' => 'Générer un CSR',
+ 'reread IP' => 'actualiser l\'IP',
+ 'enable autoupdate' => 'activer la mise-à-jour automatique',
+ 'disable autoupdate' => 'desactiver la mise-à-jour automatique',
+
+ 'Adding User' => 'Ajout d\'un Utilisateur',
+ 'Editing User' => 'Edition d\'un Utilisateur',
+ 'Adding Domain' => 'Ajout d\'un Domaine',
+ 'Editing Domain' => 'Edition d\'un Domaine',
+ 'Adding DNS Domain' => 'Ajout d\'un Domaine DNS',
+ 'Editing DNS Domain' => 'Edition d\'un Domaine DNS',
+ 'Adding DNS Record' => 'Ajout d\'un Enregistrement DNS',
+ 'Editing DNS Record' => 'Edition d\'un Enregistrement DNS',
+ 'Adding Mail Domain' => 'Ajout d\'un Domaine Mail',
+ 'Editing Mail Domain' => 'Edition d\'un Domaine Mail',
+ 'Adding Mail Account' => 'Ajout d\'un Compte Mail',
+ 'Editing Mail Account' => 'Edition d\'un Compte Mail',
+ 'Adding database' => 'Ajout d\'une base de données',
+ 'Editing Cron Job' => 'Edition d\'une tâche Cron',
+ 'Adding Cron Job' => 'Ajout d\'une tâche Cron',
+ 'Editing Database' => 'Edition d\'une base de données',
+ 'Adding Package' => 'Ajout d\'un Paquet',
+ 'Editing Package' => 'Edition d\'un Paquet',
+ 'Adding IP address' => 'Ajout d\'une adresse IP',
+ 'Editing IP Address' => 'Edition d\'une adresse IP',
+ 'Editing Backup Exclusions' => 'Edition des exclusions de Backup',
+ 'Generating CSR' => 'Génération d\'un jeton CSR',
+ 'Listing' => 'Listage',
+ 'Search Results' => 'Résultats de Recherche',
+
+ 'active' => 'actif',
+ 'spnd' => 'suspendu',
+ 'suspended' => 'suspendus',
+ 'running' => 'lancé',
+ 'stopped' => 'arrêté',
+ 'outdated' => 'périmé',
+ 'updated' => 'mis-à-jour',
+
+ 'yes' => 'oui',
+ 'no' => 'non',
+ 'none' => 'aucun',
+ 'pb' => 'po',
+ 'tb' => 'to',
+ 'gb' => 'go',
+ 'mb' => 'mo',
+ 'minute' => 'minute',
+ 'hour' => 'heure',
+ 'day' => 'jour',
+ 'days' => 'jours',
+ 'hours' => 'heures',
+ 'minutes' => 'minutes',
+ 'month' => 'mois',
+ 'package' => 'paquet',
+ 'Bandwidth' => 'Bande Passante',
+ 'Disk' => 'Disque',
+ 'Web' => 'Web',
+ 'Mail' => 'Mail',
+ 'Databases' => 'Bases de Données',
+ 'User Directories' => 'Répertoires Utilisateurs',
+ 'Template' => 'Template',
+ 'Web Template' => 'Template Apache',
+ 'Proxy Template' => 'Template Nginx',
+ 'DNS Template' => 'Template DNS',
+ 'Web Domains' => 'Domaines Web',
+ 'SSL Domains' => 'Domaines SSL',
+ 'Web Aliases' => 'Alias Web',
+ 'per domain' => 'par domaine',
+ 'DNS domains' => 'Domaines DNS',
+ 'DNS domains' => 'Domaines DNS',
+ 'DNS records' => 'Enregistrements DNS' ,
+ 'Name Servers' => 'Nom des Serveurs',
+ 'Mail Domains' => 'Domaines Mail',
+ 'Mail Accounts' => 'Comptes Mail',
+ 'Cron Jobs' => 'Tâches Cron',
+ 'SSH Access' => 'Accès SSH',
+ 'IP Addresses' => 'Adresses IP',
+ 'Backups' => 'Sauvegardes',
+ 'Backup System' => 'Système de Sauvegarde',
+ 'backup exclusions' => 'exclusions de la sauvegarde',
+ 'template' => 'template',
+ 'SSL Support' => 'Support SSL',
+ 'SSL Home Directory' => 'Racine SSL',
+ 'Proxy Support' => 'Support Nginx',
+ 'Proxy Extensions' => 'Extensions Nginx',
+ 'Web Statistics' => 'Statistiques Web',
+ 'Additional FTP Account' => 'FTP Additionnel',
+ 'SOA' => 'SOA',
+ 'TTL' => 'TTL',
+ 'Expire' => 'Expiration',
+ 'Records' => 'Enregistrements',
+ 'Catchall email' => 'Email de Récupération',
+ 'AntiVirus Support' => 'Support de l\'AntiVirus',
+ 'AntiSpam Support' => 'Support de l\'AntiSpam',
+ 'DKIM Support' => 'Support DKIM',
+ 'Accounts' => 'Comptes',
+ 'Quota' => 'Quota',
+ 'Autoreply' => 'Réponse Automatique',
+ 'Forward to' => 'Transférer à',
+ 'Do not store forwarded mail' => 'Ne pas conserver le mail transféré',
+ 'database' => 'base de données',
+ 'User' => 'Utilisateur',
+ 'Host' => 'Serveur',
+ 'Charset' => 'Charset',
+ 'Min' => 'Mn',
+ 'Hour' => 'Heure',
+ 'Day' => 'Jour',
+ 'Month' => 'Mois',
+ 'Day of week' => 'Jour de la semaine',
+ 'local' => 'local',
+ 'Run Time' => 'Temps d\'Exécution',
+ 'Backup Size' => 'Taille de la sauvegarde',
+ 'SYS' => 'SYS',
+ 'Domains' => 'Domaines',
+ 'Status' => 'Statuts',
+ 'shared' => 'partagé',
+ 'dedicated' => 'dédié',
+ 'Owner' => 'Propriétaire',
+ 'Users' => 'Utilisateurs',
+ 'Load Average' => 'Charge Moyenne',
+ 'Memory Usage' => 'Utilisation de la Mémoire',
+ 'HTTPD Usage' => 'Utilisation HTTPD',
+ 'NGINX Usage' => 'Utilisation NGINX',
+ 'MySQL Usage on localhost' => 'Utilisation de MySQL sur localhost',
+ 'PostgreSQL Usage on localhost' => 'Utilisation de PostgreSQL sur localhost',
+ 'Bandwidth Usage eth0' => 'Utilisation de la Bande Passante sur eth0',
+ 'FTP Usage' => 'Utilisation du FTP',
+ 'SSH Usage' => 'Utilisation SSH',
+ 'reverse proxy' => 'reverse proxy',
+ 'web server' => 'serveur web',
+ 'dns server' => 'serveur dns',
+ 'mail server' => 'serveur mail',
+ 'pop/imap server' => 'serveur pop/imap',
+ 'email antivirus' => 'email antivirus',
+ 'email antispam' => 'email antispam',
+ 'database server' => 'serveur de base de données',
+ 'ftp server' => 'serveur ftp',
+ 'job scheduler' => 'programmation de tâches',
+ 'CPU' => 'CPU',
+ 'Memory' => 'Mémoire',
+ 'Uptime' => 'Temps de Fonctionnement',
+ 'core package' => 'paquet de base',
+ 'php interpreter' => 'interpréteur php',
+ 'internal web server' => 'serveur web interne',
+ 'Version' => 'Version',
+ 'Release' => 'Release',
+ 'Architecture' => 'Architecture',
+ 'Object' => 'Objet',
+ 'Owner' => 'Propriétaire',
+ 'Username' => 'Nom d\'Utilisateur',
+ 'Password' => 'Mot de Passe',
+ 'Email' => 'Email',
+ 'Package' => 'Paquet',
+ 'Language' => 'Langue',
+ 'First Name' => 'Prénom',
+ 'Last Name' => 'Nom',
+ 'Send login credentials to email address' => 'Envoyer les identifiants à l\'adresse email',
+ 'Default Template' => 'Template par défaut',
+ 'Default Name Servers' => 'Nom de Serveurs par Défaut',
+ 'Domain' => 'Domaine',
+ 'DNS Support' => 'Support DNS',
+ 'Mail Support' => 'Support Email',
+ 'Advanced options' => 'Options avancées',
+ 'Aliases' => 'Alias',
+ 'SSL Certificate' => 'Certificat SSL',
+ 'SSL Key' => 'Clé SSL',
+ 'SSL Certificate Authority / Intermediate' => 'Autorité de certification SSL / Intermédiaire',
+ 'SSL CSR' => 'Jeton CSR SSL',
+ 'optional' => 'optionnel',
+ 'internal' => 'interne',
+ 'Statistics Authorization' => 'Droits d\'Accès aux Statistiques',
+ 'Statistics Auth' => 'Accès aux Statistiques',
+ 'Account' => 'Compte',
+ 'Prefix will be automaticaly added to username' => 'Le préfixe %s sera automatiquement ajouté au nom d\'utilisateur',
+ 'Send FTP credentials to email' => 'Envoyer les identifiants FTP à l\'adresse email',
+ 'Expiration Date' => 'Date d\'Expiration',
+ 'YYYY-MM-DD' => 'YYYY-MM-DD',
+ 'Name servers' => 'Nom des serveurs',
+ 'Record' => 'Valeur de l\'Enregistrement',
+ 'IP or Value' => 'IP ou Valeur',
+ 'Priority' => 'Priorité',
+ 'Record Number' => 'Nombre d\'Enregistrements',
+ 'in megabytes' => 'en mégaoctets',
+ 'Message' => 'Message',
+ 'use local-part' => 'utilisation locale',
+ 'one or more email addresses' => 'une ou plusieurs adresses email',
+ 'Prefix will be automaticaly added to database name and database user' => 'Le préfixe %s sera automatiquement ajouté au nom de la base de données et de son utilisateur',
+ 'Database' => 'Base de Données',
+ 'Type' => 'Type',
+ 'Minute' => 'Minute',
+ 'Command' => 'Commande',
+ 'Package Name' => 'Nom du Paquet',
+ 'Netmask' => 'Masque Réseau',
+ 'Interface' => 'Interface',
+ 'Shared' => 'Partagé',
+ 'Assigned user' => 'Utilisateur associé',
+ 'Assigned domain' => 'Domaine associé',
+ 'NAT IP association' => 'Association NAT IP',
+ 'shell' => 'shell',
+ 'web domains' => 'domaines web',
+ 'web aliases' => 'alias web',
+ 'dns records' => 'enregistrements dns',
+ 'mail domains' => 'domaines email',
+ 'mail accounts' => 'comptes email',
+ 'accounts' => 'comptes',
+ 'databases' => 'bases données',
+ 'cron jobs' => 'tâches cron',
+ 'backups' => 'sauvegardes',
+ 'quota' => 'quota',
+ 'day of week' => 'jour de la semaine',
+ 'cmd' => 'cmd',
+ 'users' => 'utilisateurs',
+ 'disk' => 'disque',
+ 'traffic' => 'traffic',
+ 'domains' => 'domaines',
+ 'aliases' => 'alias',
+ 'records' => 'enregistrements',
+ 'jobs' => 'tâches',
+ 'username' => 'nom d\'utilisateur',
+ 'password' => 'mot de passe',
+ 'type' => 'type',
+ 'charset' => 'charset',
+ 'domain' => 'domaine',
+ 'ip' => 'ip',
+ 'ip address' => 'adresse IP',
+ 'IP address' => 'Adresse IP',
+ 'netmask' => 'masque réseau',
+ 'interface' => 'interface',
+ 'assigned user' => 'utilisateur associé',
+ 'ns1' => 'ns1',
+ 'ns2' => 'ns2',
+ 'user' => 'utilisateur',
+ 'email' => 'email',
+ 'first name' => 'prénom',
+ 'last name' => 'nom',
+ 'account' => 'compte',
+ 'ssl certificate' => 'certificat ssl',
+ 'ssl key' => 'clé ssl',
+ 'stats user password' => 'Mot de passe du compte statistiques',
+ 'stats username' => 'utilisateur statistiques',
+ 'stats password' => 'mot de passe statistiques',
+ 'ftp user password' => 'mot de passe ftp',
+ 'ftp user' => 'utilisateur ftp',
+ 'Last 70 lines of %s.%s.log' => 'Dernières 70 lignes du fichier %s.%s.log',
+ 'Download AccessLog' => 'Télécharger le fichier AccessLog',
+ 'Download ErrorLog' => 'Télécharger le fichier ErrorLog',
+ 'Country' => 'Pays',
+ '2 letter code' => 'Code sur 2 lettres',
+ 'State / Province' => 'Pays / Province',
+ 'City / Locality' => 'Ville',
+ 'Organization' => 'Organisation',
+
+ '1 account' => '1 compte',
+ '%s accounts' => '%s comptes',
+ '1 domain' => '1 domaine',
+ '%s domains' => '%s domaines',
+ '1 record' => '1 enregistrement',
+ '%s records' => '%s enregistrements',
+ '1 mail account' => '1 compte email',
+ '%s mail accounts' => '%s comptes email',
+ '1 database' => '1 base de données',
+ '%s databases' => '%s base de données',
+ '1 cron job' => '1 tâche cron',
+ '%s cron jobs' => '%s tâches cron',
+ '1 archive' => '1 archive',
+ '%s archives' => '%s archives',
+ '1 package' => '1 paquet',
+ '%s packages' => '%s paquets',
+ '1 IP address' => '1 adresse IP',
+ '%s IP addresses' => '%s adresses IP',
+ '1 month' => '1 mois',
+ '%s months' => '%s mois',
+ '1 log record' => '1 enregistrement',
+ '%s log records' => '%s enregistrements',
+ '1 object' => '1 objet',
+ '%s objects' => '%s objets',
+ 'no exclusions' => 'pas d\'exclusions',
+
+ 'USER_CREATED_OK' => 'Utilisateur %s créé avec succès.',
+ 'WEB_DOMAIN_CREATED_OK' => 'Domaine %s créé avec succès.',
+ 'DNS_DOMAIN_CREATED_OK' => 'Domaine DNS %s créé avec succès.',
+ 'DNS_RECORD_CREATED_OK' => 'L\'enregistrement %s.%s a été créé avec succès.',
+ 'MAIL_DOMAIN_CREATED_OK' => 'Le domaine email %s a été créé avec succès.',
+ 'MAIL_ACCOUNT_CREATED_OK' => 'Le compte email %s@%s a été créé avec succès.',
+ 'DATABASE_CREATED_OK' => 'La base de données %s a été créée avec succès.',
+ 'CRON_CREATED_OK' => 'La tâche Cron a été créée avec succès.',
+ 'IP_CREATED_OK' => 'L\'adresse IP %s a été créée avec succès.',
+ 'PACKAGE_CREATED_OK' => 'Le paquet %s a été créé avec succès.',
+ 'SSL_GENERATED_OK' => 'Le certificat a été généré avec succès.',
+ 'Autoupdate has been successfully enabled' => 'Les mises-à-jour automatiques ont été activées avec succès.',
+ 'Autoupdate has been successfully disabled' => 'Les mises-à-jour automatiques ont été desactivées avec succès.',
+ 'Changes has been saved.' => 'Les changements ont été sauvegardés.',
+ 'Confirmation' => 'Confirmation',
+ 'DELETE_USER_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer l\'utilisateur %s ?',
+ 'SUSPEND_USER_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre l\'utilisateur %s ?',
+ 'UNSUSPEND_USER_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver l\'utilisateur %s ?',
+ 'DELETE_DOMAIN_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer le domaine %s ?',
+ 'SUSPEND_DOMAIN_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre le domaine %s ?',
+ 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver le domaine %s ?',
+ 'DELETE_RECORD_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer l\'enregistrement %s ?',
+ 'SUSPEND_RECORD_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre l\'enregistrement %s ?',
+ 'UNSUSPEND_RECORD_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver l\'enregistrement %s ?',
+ 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer %s ?',
+ 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre %s ?',
+ 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver %s ?',
+ 'DELETE_DATABASE_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer la base de données %s ?',
+ 'SUSPEND_DATABASE_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre la base de données %s ?',
+ 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver la base de données %s ?',
+ 'DELETE_CRON_CONFIRMATION' => 'Êtes-vous sûr de vouloir suprimer la tâche cron ?',
+ 'SUSPEND_CRON_CONFIRMATION' => 'Êtes-vous sûr de vouloir suspendre la tâche cron ?',
+ 'UNSUSPEND_CRON_CONFIRMATION' => 'Êtes-vous sûr de vouloir réactiver la tâche cron ?',
+ 'DELETE_BACKUP_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer la sauvergarde %s ?',
+ 'DELETE_EXCLUSION_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer l\'exclusion %s ?',
+ 'DELETE_PACKAGE_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer le paquet %s ?',
+ 'DELETE_IP_CONFIRMATION' => 'Êtes-vous sûr de vouloir supprimer l\'adresse IP %s ?',
+ 'Welcome' => 'Bienvenue',
+ 'LOGGED_IN_AS' => 'Connecté en tant que %s',
+ 'Error' => 'Erreur',
+ 'Invalid username or password' => 'Nom d\'utilisateur ou mot de passe invalide.',
+ 'Invalid username or code' => 'Nom d\'utilisateur ou code de confirmation invalide.',
+ 'Passwords not match' => 'Les mots de passe ne correspondent pas.',
+ 'Please enter valid email address.' => 'Veuillez entrer une adresse email valide.',
+ 'Field "%s" can not be blank.' => 'Le champ "%s" ne peut être vide.',
+ 'Password is too short.' => 'Le mot de passe est trop court (6 caractères minimum)',
+ 'Error code:' => 'Code erreur : %s',
+ 'SERVICE_ACTION_FAILED' => '"%s" "%s" échouée',
+ 'IP address is in use' => 'L\'adresse IP est en cours d\'utilisation',
+ 'BACKUP_SCHEDULED' => 'La tâche a bien été ajoutée à la liste. Vous recevrez un mail de confirmation lorsque la sauvegarde sera prête pour le téléchargement.',
+ 'BACKUP_EXISTS' => 'La création d\'une sauvegarde est déjà en cours. Veuillez attendre que celle-ci soit terminée.',
+ 'RESTORE_SCHEDULED' => 'La tâche a bien été ajoutée à la liste. Vous recevrez un mail de confirmation lorsque sera terminée.',
+ 'RESTORE_EXISTS' => 'La restauration d\'une sauvegarde est déjà en cours. Veuillez attendre que celle-ci soit terminée avant d\en lancer une nouvelle.',
+
+ 'WEB_EXCLUSIONS' => "Entrez les noms de domaines, un par ligne. Pour exclure tous les domaines utilisez *. Pour exclure des répertoires spécifiques utilisez le format suivant : domain.com:public_html/cache:public_html/tmp",
+ 'DNS_EXCLUSIONS' => "Entrez les noms de domaines, un par ligne. Pour exclure tous les domaines utilisez *.",
+ 'MAIL_EXCLUSIONS' => "Entrez les domaines, un par ligne. Pour exclure tous les domaines utilisez *. Pour exclure des comptes spécifiques utilisez le format suivant : domain.com:info:support:postmaster",
+ 'DB_EXCLUSIONS' => "Entrez le nom complet des bases de données, une par ligne. Pour exclure toutes les bases de données utilisez *.",
+ 'CRON_EXCLUSIONS' => "Pour explure toutes les tâches utilisez *.",
+ 'USER_EXCLUSIONS' => "Entrez les noms de répertoires, un par ligne. Pour exclure tous les répertoires utilisez *.",
+
+ 'Welcome to Vesta Control Panel' => 'Bienvenue sur l\interface d\'administration Vesta CP',
+ 'MAIL_FROM' => 'Vesta Control Panel ',
+ 'GREETINGS_GORDON_FREEMAN' => "Bonjour, %s %s,\n",
+ 'GREETINGS' => "Bonjour,\n",
+ 'ACCOUNT_READY' => "Votre compte a été créé avec succès et est prêt à l\'emploi.\n\nhttps://%s/login/\nUtilisateur : %s\nMot de Passe : %s\n\n--\nVesta Control Panel\n",
+
+ 'FTP login credentials' => 'Identifiants de connexion FTP',
+ 'FTP_ACCOUNT_READY' => "Le compte FTP a été créé avec succès et est prêt à l\'emploi.\n\nHôte : %s\nUtilisateur : %s_%s\nMot de Passe : %s\n\n--\nVesta Control Panel\n",
+
+ 'Database Credentials' => 'Identifiants de connexion à la Base de Données',
+ 'DATABASE_READY' => "La base de données a été créée avec succès et est prête à l\'emploi.\n\nBase de Données : %s\nUtilisateur : %s\nMot de Passe: %s\n%s\n\n--\nVesta Control Panel\n",
+
+ 'forgot password' => 'mot de passe oublié',
+ 'Confirm' => 'Confirmer',
+ 'New Password' => 'Nouveau mot de passe',
+ 'Confirm Password' => 'Confirmer le mot de passe',
+ 'Reset' => 'Réinitialiser',
+ 'Reset Code' => 'Code de Réinitialisation',
+ 'RESET_NOTICE' => '',
+ 'RESET_CODE_SENT' => 'Un Code de Réinitialisation de votre mot de passe a été envoyé à votre adresse email
',
+ 'MAIL_RESET_SUBJECT' => 'Réinitialisation du mot de passe de %s',
+ 'PASSWORD_RESET_REQUEST' => "Pour réinitialiser votre mot de passe, veuillez suivre le lien suivant :\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nSinon, vous pouvez suivre https://%s/reset/?action=code&user=%s et entrer le code de réinitialisation suivant :\n%s\n\nSi vous n'avez pas demandé la réinitialisation de votre mot de passe, veuillez ignorer ce message. Nous vous prions de nous excuser pour la gène occasionnée.\n\n--\nVesta Control Panel\n",
+);
diff --git a/web/inc/i18n/it.php b/web/inc/i18n/it.php
new file mode 100644
index 00000000..002eca97
--- /dev/null
+++ b/web/inc/i18n/it.php
@@ -0,0 +1,442 @@
+ 'Pacchetti',
+ 'IP' => 'IP',
+ 'Graphs' => 'Grafici',
+ 'Statistics' => 'Statistiche',
+ 'Log' => 'Log',
+ 'Services' => 'Servizi',
+ 'Updates' => 'Aggiornamenti',
+ 'Log in' => 'Log in',
+ 'Log out' => 'Log out',
+
+ 'USER' => 'USER',
+ 'WEB' => 'WEB',
+ 'DNS' => 'DNS',
+ 'MAIL' => 'MAIL',
+ 'DB' => 'DB',
+ 'CRON' => 'CRON',
+ 'BACKUP' => 'BACKUP',
+
+ 'Add User' => 'Nuovo Utente',
+ 'Add Domain' => 'Nuovo Dominio',
+ 'Add Web Domain' => 'Nuovo Dominio',
+ 'Add DNS Domain' => 'Nuova Zona DNS',
+ 'Add DNS Record' => 'Nuovo Record',
+ 'Add Mail Domain' => 'Nuovo Dominio',
+ 'Add Mail Account' => 'Nuovo Account',
+ 'Add Database' => 'Nuovo Database',
+ 'Add Cron Job' => 'Nuovo Cron Job',
+ 'Create Backup' => 'Crea Backup',
+ 'Configure' => 'Configura',
+ 'Restore All' => 'Ripristina Tutto',
+ 'Add Package' => 'Nuovo Pacchetto',
+ 'Add IP' => 'Aggiungi IP',
+ 'Search' => 'Cerca',
+ 'Overall Statistics' => 'Statistiche Generali',
+ 'Daily' => 'Giornaliero',
+ 'Weekly' => 'Settimanale',
+ 'Monthly' => 'Mensile',
+ 'Yearly' => 'Annuale',
+ 'Add' => 'Aggiungi',
+ 'Back' => 'Indietro',
+ 'Save' => 'Salva',
+ 'Submit' => 'Invia',
+
+ 'toggle all' => 'inverti tutti',
+ 'apply to selected' => 'applica ai selezionati',
+ 'rebuild' => 'ricostruisci',
+ 'rebuild web' => 'ricostruisci web',
+ 'rebuild dns' => 'ricostruisci dns',
+ 'rebuild mail' => 'ricostruisci mail',
+ 'rebuild db' => 'ricostruisci db',
+ 'rebuild cron' => 'ricostruisci cron',
+ 'update counters' => 'aggiorna contatori',
+ 'suspend' => 'sospendi',
+ 'unsuspend' => 'riabilita',
+ 'delete' => 'cancella',
+ 'show per user' => 'mostra per utente',
+ 'login as' => 'accedi come',
+ 'logout' => 'logout',
+ 'edit' => 'modifica',
+ 'open webstats' => 'apri webstats',
+ 'view logs' => 'visualizza logs',
+ 'list records' => 'mostra %s record',
+ 'add record' => 'nuovo record',
+ 'list accounts' => 'mostra %s account',
+ 'add account' => 'aggiungi account',
+ 'open webmail' => 'apri webmail',
+ 'open %s' => 'apri %s',
+ 'download' => 'download',
+ 'restore' => 'ripristina',
+ 'configure restore settings' => 'configure restore settings',
+ 'stop' => 'ferma',
+ 'start' => 'avvia',
+ 'restart' => 'riavvia',
+ 'update' => 'aggiorna',
+ 'generate' => 'genera',
+ 'Generate CSR' => 'Genera CSR',
+ 'reread IP' => 'rileggi IP',
+ 'enable autoupdate' => 'abilita aggiornamenti automatici',
+ 'disable autoupdate' => 'disabilita aggiornamenti automatici',
+
+ 'Adding User' => 'Aggiunta Utente',
+ 'Editing User' => 'Modifica Utente',
+ 'Adding Domain' => 'Aggiunta Dominio',
+ 'Editing Domain' => 'Modifica Dominio',
+ 'Adding DNS Domain' => 'Aggiunta Dominio DNS',
+ 'Editing DNS Domain' => 'Modifica Dominio DNS',
+ 'Adding DNS Record' => 'Aggiunta Record DNS',
+ 'Editing DNS Record' => 'Modifica Record DNS',
+ 'Adding Mail Domain' => 'Aggiunta Dominio Mail',
+ 'Editing Mail Domain' => 'Modifica Dominio Mail',
+ 'Adding Mail Account' => 'Aggiunta Account Mail',
+ 'Editing Mail Account' => 'Modifica Account Mail',
+ 'Adding database' => 'Aggiunta database',
+ 'Editing Cron Job' => 'Modifica Cron Job',
+ 'Adding Cron Job' => 'Aggiunta Cron Job',
+ 'Editing Database' => 'Modifica Database',
+ 'Adding Package' => 'Aggiunta Pacchetto',
+ 'Editing Package' => 'Modifica Pacchetto',
+ 'Adding IP address' => 'Aggiunta Indirizzo IP',
+ 'Editing IP Address' => 'Modifica Indirizzo IP',
+ 'Editing Backup Exclusions' => 'Modifica Esclusioni Backup',
+ 'Generating CSR' => 'Genera CSR',
+ 'Listing' => 'Lista',
+ 'Search Results' => 'Risultati Ricerca',
+
+ 'active' => 'attivo',
+ 'spnd' => 'sospeso',
+ 'suspended' => 'sospeso',
+ 'running' => 'in esecuzione',
+ 'stopped' => 'fermato',
+ 'outdated' => 'obsoleto',
+ 'updated' => 'aggiornato',
+
+ 'yes' => 'si',
+ 'no' => 'no',
+ 'none' => 'nessuno',
+ 'pb' => 'pb',
+ 'tb' => 'tb',
+ 'gb' => 'gb',
+ 'mb' => 'mb',
+ 'minute' => 'minuto',
+ 'hour' => 'ora',
+ 'day' => 'giorno',
+ 'days' => 'giorni',
+ 'hours' => 'ore',
+ 'minutes' => 'minuti',
+ 'month' => 'mese',
+ 'package' => 'pacchetto',
+ 'Bandwidth' => 'Banda',
+ 'Disk' => 'Disco',
+ 'Web' => 'Web',
+ 'Mail' => 'Mail',
+ 'Databases' => 'Databases',
+ 'User Directories' => 'Directories Utente',
+ 'Template' => 'Template',
+ 'Web Template' => 'Apache Template',
+ 'Proxy Template' => 'Nginx Template',
+ 'DNS Template' => 'DNS Template',
+ 'Web Domains' => 'Domini Web',
+ 'SSL Domains' => 'Domini SSL',
+ 'Web Aliases' => 'Alias Web',
+ 'per domain' => 'per dominio',
+ 'DNS Domains' => 'Zone DNS',
+ 'DNS domains' => 'Zone DNS',
+ 'DNS records' => 'Record DNS',
+ 'Name Servers' => 'Name Servers',
+ 'Mail Domains' => 'Domini Mail',
+ 'Mail Accounts' => 'Account Mail',
+ 'Cron Jobs' => 'Cron Jobs',
+ 'SSH Access' => 'Accesso SSH',
+ 'IP Addresses' => 'Indirizzi IP',
+ 'Backups' => 'Backups',
+ 'Backup System' => 'Sistema Backup',
+ 'backup exclusions' => 'esclusioni backup',
+ 'template' => 'template',
+ 'SSL Support' => 'Supporto SSL',
+ 'SSL Home Directory' => 'SSL Home',
+ 'Proxy Support' => 'Supporto Nginx',
+ 'Proxy Extensions' => 'Estensioni Nginx',
+ 'Web Statistics' => 'Statistiche Web',
+ 'Additional FTP Account' => 'FTP Addizionali',
+ 'SOA' => 'SOA',
+ 'TTL' => 'TTL',
+ 'Expire' => 'Scadenza',
+ 'Records' => 'Record',
+ 'Catchall email' => 'Catchall email',
+ 'AntiVirus Support' => 'Supporto AntiVirus',
+ 'AntiSpam Support' => 'Supporto AntiSpam',
+ 'DKIM Support' => 'Supporto DKIM',
+ 'Accounts' => 'Account',
+ 'Quota' => 'Quota',
+ 'Autoreply' => 'Autorisposta',
+ 'Forward to' => 'Inoltra a',
+ 'Do not store forwarded mail' => 'Non salvare le email inoltrate',
+ 'database' => 'database',
+ 'User' => 'Utente',
+ 'Host' => 'Host',
+ 'Charset' => 'Charset',
+ 'Min' => 'Minuto',
+ 'Hour' => 'Ora',
+ 'Day' => 'Giorno',
+ 'Month' => 'Mese',
+ 'Day of week' => 'Giorno della settimana',
+ 'local' => 'local',
+ 'Run Time' => 'Tempo di Esecuzione',
+ 'Backup Size' => 'Dimensioni Backup',
+ 'SYS' => 'SYS',
+ 'Domains' => 'Domini',
+ 'Status' => 'Stato',
+ 'shared' => 'condiviso',
+ 'dedicated' => 'dedicato',
+ 'Owner' => 'Proprietario',
+ 'Users' => 'Utenti',
+ 'Load Average' => 'Carico Medio',
+ 'Memory Usage' => 'Uso Memoria',
+ 'HTTPD Usage' => 'Utilizzo HTTPD',
+ 'NGINX Usage' => 'Utilizzo NGINX',
+ 'MySQL Usage on localhost' => 'Utilizzo MySQL su localhost',
+ 'PostgreSQL Usage on localhost' => 'Utilizzo PostgreSQL su localhost',
+ 'Bandwidth Usage eth0' => 'Utilizzo banda su eth0',
+ 'FTP Usage' => 'Utilizzo FTP',
+ 'SSH Usage' => 'Utilizzo SSH',
+ 'reverse proxy' => 'reverse proxy',
+ 'web server' => 'web server',
+ 'dns server' => 'dns server',
+ 'mail server' => 'mail server',
+ 'pop/imap server' => 'pop/imap server',
+ 'email antivirus' => 'email antivirus',
+ 'email antispam' => 'email antispam',
+ 'database server' => 'database server',
+ 'ftp server' => 'ftp server',
+ 'job scheduler' => 'job scheduler',
+ 'CPU' => 'CPU',
+ 'Memory' => 'Memoria',
+ 'Uptime' => 'Uptime',
+ 'core package' => 'pacchetto di sistema',
+ 'php interpreter' => 'interprete php',
+ 'internal web server' => 'web server interno',
+ 'Version' => 'Versione',
+ 'Release' => 'Release',
+ 'Architecture' => 'Architettura',
+ 'Object' => 'Oggetto',
+ 'Owner' => 'Proprietario',
+ 'Username' => 'Username',
+ 'Password' => 'Password',
+ 'Email' => 'Email',
+ 'Package' => 'Pacchetto',
+ 'Language' => 'Lingua',
+ 'First Name' => 'Nome',
+ 'Last Name' => 'Cognome',
+ 'Send login credentials to email address' => 'Invia le credenziali di login per email',
+ 'Default Template' => 'Default Template',
+ 'Default Name Servers' => 'Default Name Servers',
+ 'Domain' => 'Dominio',
+ 'DNS Support' => 'Supporto DNS',
+ 'Mail Support' => 'Supporto Mail',
+ 'Advanced options' => 'Opzioni Avanzate',
+ 'Aliases' => 'Alias Dominio',
+ 'SSL Certificate' => 'Certificato SSL',
+ 'SSL Key' => 'SSL Key',
+ 'SSL Certificate Authority / Intermediate' => 'SSL Certificate Authority / Intermediate',
+ 'SSL CSR' => 'SSL CSR',
+ 'optional' => 'opzionale',
+ 'internal' => 'interno',
+ 'Statistics Authorization' => 'Autorizzazione Statistiche',
+ 'Statistics Auth' => 'Statistiche Auth',
+ 'Account' => 'Account',
+ 'Prefix will be automaticaly added to username' => 'Il prefisso %s verrà automatiamente aggiunto all\'username',
+ 'Send FTP credentials to email' => 'Invia le credenziali FTP per email',
+ 'Expiration Date' => 'Data di scadenza',
+ 'YYYY-MM-DD' => 'YYYY-MM-DD',
+ 'Name servers' => 'Name servers',
+ 'Record' => 'Record',
+ 'IP or Value' => 'IP o Valore',
+ 'Priority' => 'Priorità',
+ 'Record Number' => 'Numero Record',
+ 'in megabytes' => 'in megabytes',
+ 'Message' => 'Messaggio',
+ 'use local-part' => 'usa local-part',
+ 'one or more email addresses' => 'uno o più indirizzi email',
+ 'Prefix will be automaticaly added to database name and database user' => 'Il prefisso %s verrà automatiamente aggiunto al nome e all\'utente del database',
+ 'Database' => 'Database',
+ 'Type' => 'Tipo',
+ 'Minute' => 'Minuto',
+ 'Command' => 'Comando',
+ 'Package Name' => 'Nome Pacchetto',
+ 'Netmask' => 'Netmask',
+ 'Interface' => 'Interfaccia',
+ 'Shared' => 'Condiviso',
+ 'Assigned user' => 'Utente Assegnato',
+ 'Assigned domain' => 'Dominio Assegnato',
+ 'NAT IP association' => 'Associazione IP NAT',
+ 'shell' => 'shell',
+ 'web domains' => 'domini web',
+ 'web aliases' => 'aliases web',
+ 'dns records' => 'record dns',
+ 'mail domains' => 'domini mail',
+ 'mail accounts' => 'account mail',
+ 'accounts' => 'account',
+ 'databases' => 'database',
+ 'cron jobs' => 'cron jobs',
+ 'backups' => 'backups',
+ 'quota' => 'quota',
+ 'day of week' => 'giorno della settimanta',
+ 'cmd' => 'cmd',
+ 'users' => 'users',
+ 'domains' => 'domini',
+ 'aliases' => 'alias',
+ 'records' => 'record',
+ 'jobs' => 'jobs',
+ 'username' => 'username',
+ 'password' => 'password',
+ 'type' => 'tipo',
+ 'charset' => 'charset',
+ 'domain' => 'dominio',
+ 'ip' => 'ip',
+ 'ip address' => 'indirizzo ip',
+ 'IP address' => 'indirizzo IP',
+ 'netmask' => 'netmask',
+ 'interface' => 'interfaccia',
+ 'assigned user' => 'utente assegnato',
+ 'ns1' => 'ns1',
+ 'ns2' => 'ns2',
+ 'user' => 'user',
+ 'email' => 'email',
+ 'first name' => 'nome',
+ 'last name' => 'cognome',
+ 'account' => 'account',
+ 'ssl certificate' => 'certificato ssl',
+ 'ssl key' => 'key ssl',
+ 'stats user password' => 'stats user password',
+ 'stats username' => 'stats username',
+ 'stats password' => 'stats password',
+ 'ftp user password' => 'ftp user password',
+ 'ftp user' => 'ftp user',
+ 'Last 70 lines of %s.%s.log' => 'Ultime 70 righe di %s.%s.log',
+ 'Download AccessLog' => 'Download AccessLog',
+ 'Download ErrorLog' => 'Download ErrorLog',
+ 'Country' => 'Paese',
+ '2 letter code' => 'codice di 2 lettere',
+ 'State / Province' => 'Stato / Provincia',
+ 'City / Locality' => 'Città / Località',
+ 'Organization' => 'Organizzazione',
+
+ '1 account' => '1 account',
+ '%s accounts' => '%s account',
+ '1 domain' => '1 dominio',
+ '%s domains' => '%s domini',
+ '1 record' => '1 record',
+ '%s records' => '%s record',
+ '1 mail account' => '1 account mail',
+ '%s mail accounts' => '%s account mail',
+ '1 database' => '1 database',
+ '%s databases' => '%s databases',
+ '1 cron job' => '1 cron job',
+ '%s cron jobs' => '%s cron jobs',
+ '1 archive' => '1 archivio',
+ '%s archives' => '%s archivi',
+ '1 package' => '1 pacchetto',
+ '%s packages' => '%s pacchetti',
+ '1 IP address' => '1 indirizzo IP',
+ '%s IP addresses' => '%s indirizzi IP',
+ '1 month' => '1 mese',
+ '%s months' => '%s mesi',
+ '1 log record' => '1 log record',
+ '%s log records' => '%s log record',
+ '1 object' => '1 oggetto',
+ '%s objects' => '%s oggetti',
+ 'no exclusions' => 'senza esclusioni',
+
+ 'USER_CREATED_OK' => 'L\'utente %s è stato creato con successo.',
+ 'WEB_DOMAIN_CREATED_OK' => 'Il dominio %s è stato creato con successo.',
+ 'DNS_DOMAIN_CREATED_OK' => 'Il dominio DNS %s è stato creato con successo.',
+ 'DNS_RECORD_CREATED_OK' => 'Il record %s.%s è stato creato con successo.',
+ 'MAIL_DOMAIN_CREATED_OK' => 'Dominio Mail %s è stato creato con successo.',
+ 'MAIL_ACCOUNT_CREATED_OK' => 'L\'account mail %s@%s è stato creato con successo.',
+ 'DATABASE_CREATED_OK' => 'Il database %s è stato creato con successo.',
+ 'CRON_CREATED_OK' => 'Il cron job è stato creato con successo.',
+ 'IP_CREATED_OK' => 'L\'indirizzo IP %s è stato creato con successo.',
+ 'PACKAGE_CREATED_OK' => 'Il pacchetto %s è stato creato con successo.',
+ 'SSL_GENERATED_OK' => 'Il certificato è stato generato con successo.',
+ 'Autoupdate has been successfully enabled' => 'Gli aggiornamenti automatici sono stati abilitati',
+ 'Autoupdate has been successfully disabled' => 'Gli aggiornamenti automatici sono stati disabilitati',
+ 'Changes has been saved.' => 'I cambiamenti sono stati salvati.',
+ 'Confirmation' => 'Conferma',
+ 'DELETE_USER_CONFIRMATION' => 'Sei sicuro di voler cancellare l\'utente %s?',
+ 'SUSPEND_USER_CONFIRMATION' => 'Sei sicuro di voler disabilitare l\'utente %s?',
+ 'UNSUSPEND_USER_CONFIRMATION' => 'Sei sicuro di voler riabilitare l\'utente %s?',
+ 'DELETE_DOMAIN_CONFIRMATION' => 'Sei sicuro di voler cancellare il dominio %s?',
+ 'SUSPEND_DOMAIN_CONFIRMATION' => 'Sei sicuro di voler disabilitare il dominio %s?',
+ 'UNSUSPEND_DOMAIN_CONFIRMATION' => 'Sei sicuro di voler riabilitare il dominio %s?',
+ 'DELETE_RECORD_CONFIRMATION' => 'Sei sicuro di voler cancellare il record %s?',
+ 'SUSPEND_RECORD_CONFIRMATION' => 'Sei sicuro di voler disabilitare il record %s?',
+ 'UNSUSPEND_RECORD_CONFIRMATION' => 'Sei sicuro di voler riabilitare il record %s?',
+ 'DELETE_MAIL_ACCOUNT_CONFIRMATION' => 'Sei sicuro di voler cancellare %s?',
+ 'SUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Sei sicuro di voler disabilitare %s?',
+ 'UNSUSPEND_MAIL_ACCOUNT_CONFIRMATION' => 'Sei sicuro di voler riabilitare %s?',
+ 'DELETE_DATABASE_CONFIRMATION' => 'Sei sicuro di voler cancellare il database %s?',
+ 'SUSPEND_DATABASE_CONFIRMATION' => 'Sei sicuro di voler disabilitare il database %s?',
+ 'UNSUSPEND_DATABASE_CONFIRMATION' => 'Sei sicuro di voler riabilitare il database %s?',
+ 'DELETE_CRON_CONFIRMATION' => 'Sei sicuro di voler cancellare il cron job?',
+ 'SUSPEND_CRON_CONFIRMATION' => 'Sei sicuro di voler disabilitare il cron job?',
+ 'UNSUSPEND_CRON_CONFIRMATION' => 'Sei sicuro di voler riabilitare il cron job?',
+ 'DELETE_BACKUP_CONFIRMATION' => 'Sei sicuro di voler cancellare il backup %s?',
+ 'DELETE_EXCLUSION_CONFIRMATION' => 'Sei sicuro di voler cancellare l\'esclusione %s?',
+ 'DELETE_PACKAGE_CONFIRMATION' => 'Sei sicuro di voler cancellare il pacchetto %s?',
+ 'DELETE_IP_CONFIRMATION' => 'Sei sicuro di voler l\'indirizoz IP %s?',
+ 'Welcome' => 'Benvenuto',
+ 'LOGGED_IN_AS' => 'Connesso come l\'utente %s',
+ 'Error' => 'Errore',
+ 'Invalid username or password' => 'Username o password non validi',
+ 'Invalid username or code' => 'Esername o codice non validi',
+ 'Passwords not match' => 'Le passwords non coincidono',
+ 'Please enter valid email address.' => 'Inserisci un\'indirizzo email valido.',
+ 'Field "%s" can not be blank.' => 'Il campo "%s" non può essere lasciato vuoto.',
+ 'Password is too short.' => 'La password è troppo corta (minimo 6 caratteri)',
+ 'Error code:' => 'Codice errore: %s',
+ 'SERVICE_ACTION_FAILED' => '"%s" "%s" fallita',
+ 'IP address is in use' => 'L\'indirizzo IP è già in uso',
+ 'BACKUP_SCHEDULED' => 'L\'operazione è stata aggiunta alla coda. Riceverai una notifica via email quando il tuo backup sarà pronto per il download.',
+ 'BACKUP_EXISTS' => 'È già in corso la creazione di un backup. Perfavore attendi che il backup finisca.',
+ 'RESTORE_SCHEDULED' => 'L\'operazione è stata aggiunta alla coda. Riceverai una notifica via email quando il tuo backup sarà pronto per il download.',
+ 'RESTORE_EXISTS' => 'È già in corso un\'oprazione di ripristino. Attendi che finisca prima di rilanciarla nuovamento.',
+
+ 'WEB_EXCLUSIONS' => "Scrivi un nome di dominio per riga. Per escludere tutti i domini usa *. Per escludere directory specifiche usa il formato: domain.com:public_html/cache:public_html/tmp",
+ 'DNS_EXCLUSIONS' => "Scrivi un nome di dominio per riga. Per escludere tutti i domini usa *",
+ 'MAIL_EXCLUSIONS' => "Scrivi un nome di dominio per riga. Per escludere tutti i domini usa *. Per escludere account specifici usare il formato: domain.com:info:support:postmaster",
+ 'DB_EXCLUSIONS' => "Scrivi un nome completo di database per riga. Per escludere tutti i database usa *",
+ 'CRON_EXCLUSIONS' => "Per escludere tutti i cron job usa *",
+ 'USER_EXCLUSIONS' => "Scrivi un nome di directory per riga. Per escludere tutte le directory usa *",
+
+ 'Welcome to Vesta Control Panel' => 'Benvenuto nel Vesta Control Panel',
+ 'MAIL_FROM' => 'Vesta Control Panel ',
+ 'GREETINGS_GORDON_FREEMAN' => "Ciao, %s %s,\n",
+ 'GREETINGS' => "Ciao,\n",
+ 'ACCOUNT_READY' => "Il tuo account è stato creato ed è pronto per l\'utilizzo.\n\nhttps://%s/login/\nUsername: %s\nPassword: %s\n\n--\nVesta Control Panel\n",
+
+ 'FTP login credentials' => 'Credenziali login FTP',
+ 'FTP_ACCOUNT_READY' => "L\'account FTP è stato creato ed è pronto per l\'uso.\n\nHostname: %s\nUsername: %s_%s\nPassword: %s\n\n--\nVesta Control Panel\n",
+
+ 'Database Credentials' => 'Credenziali Database',
+ 'DATABASE_READY' => "Il database è stato creato con successo.\n\nDatabase: %s\nUser: %s\nPassword: %s\n%s\n\n--\nVesta Control Panel\n",
+
+ 'forgot password' => 'password dimenticata',
+ 'Confirm' => 'Conferma',
+ 'New Password' => 'Nuova Password',
+ 'Confirm Password' => 'Conferma Password',
+ 'Reset' => 'Reset',
+ 'Reset Code' => 'Codice Reset',
+ 'RESET_NOTICE' => '',
+ 'RESET_CODE_SENT' => 'Il codice di reset per la tua password ti è stato inviato per email
',
+ 'MAIL_RESET_SUBJECT' => 'Password Reset per %s',
+ 'PASSWORD_RESET_REQUEST' => "Per fare il reset della password per il pannello di controllo clicca sul link:\nhttps://%s/reset/?action=confirm&user=%s&code=%s\n\nAlternativamente puoi andare su https://%s/reset/?action=code&user=%s e inserire questo codice di reset:\n%s\n\nSe non hai richiesto il reset della tua password, ignora questa email.\n\n--\nVesta Control Panel\n",
+);