-
{% trans "Connection to" %} {$ IPAddress $} {% trans "failed. Please delete and re-add." %}
+
{% trans "Connection to" %} {$ IPAddress $} {% trans "failed. Please delete and re-add. " %} {$ errorMessage $}
diff --git a/backup/views.py b/backup/views.py
index 6d14ed0f2..b7605ca85 100644
--- a/backup/views.py
+++ b/backup/views.py
@@ -20,6 +20,7 @@ import signal
import plogical.remoteBackup as rBackup
import requests
from baseTemplate.models import version
+from plogical.virtualHostUtilities import virtualHostUtilities
def loadBackupHome(request):
try:
@@ -51,6 +52,12 @@ def restoreSite(request):
all_files = []
ext = ".tar.gz"
+ command = 'sudo chown -R cyberpanel:cyberpanel '+path
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
files = os.listdir(path)
for filename in files:
if filename.endswith(ext):
@@ -513,30 +520,51 @@ def submitDestinationCreation(request):
try:
- dest.objects.get(destLoc=ipAddress)
+ d = dest.objects.get(destLoc=ipAddress)
final_dic = {'destStatus': 0, 'error_message': "This destination already exists."}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
except:
- status = backupUtil.backupUtilities.setupSSHKeys(ipAddress,password)
- if status == 1:
+ keyPath = "/home/cyberpanel/.ssh"
+
+ if not os.path.exists(keyPath):
+ os.makedirs(keyPath)
+ command = "ssh-keygen -f "+keyPath+"/cyberpanel -t rsa -N ''"
+ cmd = shlex.split(command)
+ res = subprocess.call(cmd)
+
+ pubKey = keyPath+"/cyberpanel.pub"
+
+ f = open(pubKey)
+ data = f.read()
+
+ finalData = json.dumps({'username': "admin", "password": password,"putSSHKey":data})
+
+ url = "https://" + ipAddress + ":8090/api/putSSHkey"
+
+ r = requests.post(url, data=finalData, verify=False)
+
+ data = json.loads(r.text)
+
+ if data['putSSHKey'] == 1:
+
newDest = dest(destLoc=ipAddress)
newDest.save()
-
- writeToFile = open(destinations,"w")
- writeToFile.writelines(ipAddress+"\n")
+ writeToFile = open(destinations, "w")
+ writeToFile.writelines(ipAddress + "\n")
writeToFile.close()
+
backupUtil.backupUtilities.initiateBackupDirCreation(ipAddress)
final_dic = {'destStatus': 1, 'error_message': "None"}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
else:
- final_dic = {'destStatus': 0, 'error_message': status}
+ final_dic = {'destStatus': 0, 'error_message': data['error_message']}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
@@ -599,17 +627,18 @@ def getConnectionStatus(request):
data = json.loads(request.body)
ipAddress = data['IPAddress']
- if backupUtil.backupUtilities.checkConnection(ipAddress)==1:
+ checkCon = backupUtil.backupUtilities.checkConnection(ipAddress)
+
+ if checkCon[0]==1:
final_dic = {'connStatus': 1, 'error_message': "None"}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
else:
- final_dic = {'connStatus': 0, 'error_message': "None"}
+ final_dic = {'connStatus': 0, 'error_message': checkCon[1]}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
-
except BaseException,msg:
final_dic = {'connStatus': 1, 'error_message': str(msg)}
final_json = json.dumps(final_dic)
@@ -764,11 +793,15 @@ def submitBackupSchedule(request):
if backupDest == "Home" and backupFreq == "Daily":
cronJob = "0 3 * * 0-6 root python /usr/local/CyberCP/plogical/backupScheduleLocal.py"
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path,'a')
writeToFile.writelines(cronJob+"\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -782,11 +815,15 @@ def submitBackupSchedule(request):
elif backupDest == "Home" and backupFreq == "Weekly":
cronJob = "0 3 * * 3 root python /usr/local/CyberCP/plogical/backupScheduleLocal.py "
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -800,11 +837,15 @@ def submitBackupSchedule(request):
elif backupDest != "Home" and backupFreq == "Daily":
cronJob = "0 3 * * 0-6 root python /usr/local/CyberCP/plogical/backupSchedule.py"
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -818,11 +859,15 @@ def submitBackupSchedule(request):
elif backupDest != "Home" and backupFreq == "Weekly":
cronJob = "0 3 * * 3 root python /usr/local/CyberCP/plogical/backupSchedule.py "
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -836,11 +881,15 @@ def submitBackupSchedule(request):
if backupDest == "Home" and backupFreq == "Daily":
cronJob = "0 3 * * 0-6 root python /usr/local/CyberCP/plogical/backupScheduleLocal.py"
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -854,11 +903,15 @@ def submitBackupSchedule(request):
elif backupDest == "Home" and backupFreq == "Weekly":
cronJob = "0 3 * * 3 root python /usr/local/CyberCP/plogical/backupScheduleLocal.py "
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -872,11 +925,15 @@ def submitBackupSchedule(request):
elif backupDest != "Home" and backupFreq == "Daily":
cronJob = "0 3 * * 0-6 root python /usr/local/CyberCP/plogical/backupSchedule.py"
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -890,11 +947,15 @@ def submitBackupSchedule(request):
elif backupDest != "Home" and backupFreq == "Weekly":
cronJob = "0 3 * * 3 root python /usr/local/CyberCP/plogical/backupSchedule.py "
+ virtualHostUtilities.permissionControl(path)
+
writeToFile = open(path, 'a')
writeToFile.writelines(cronJob + "\n")
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -929,6 +990,8 @@ def scheduleDelete(request):
if backupDest == "Home" and backupFreq == "Daily":
+ virtualHostUtilities.permissionControl(path)
+
data = open(path, "r").readlines()
writeToFile = open(path, 'w')
@@ -940,7 +1003,9 @@ def scheduleDelete(request):
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -953,6 +1018,8 @@ def scheduleDelete(request):
elif backupDest == "Home" and backupFreq == "Weekly":
+ virtualHostUtilities.permissionControl(path)
+
data = open(path, "r").readlines()
writeToFile = open(path, 'w')
@@ -964,7 +1031,9 @@ def scheduleDelete(request):
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -977,6 +1046,8 @@ def scheduleDelete(request):
elif backupDest != "Home" and backupFreq == "Daily":
+ virtualHostUtilities.permissionControl(path)
+
data = open(path, "r").readlines()
writeToFile = open(path, 'w')
@@ -988,7 +1059,9 @@ def scheduleDelete(request):
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -1001,6 +1074,8 @@ def scheduleDelete(request):
elif backupDest != "Home" and backupFreq == "Weekly":
+ virtualHostUtilities.permissionControl(path)
+
data = open(path, "r").readlines()
writeToFile = open(path, 'w')
@@ -1012,7 +1087,9 @@ def scheduleDelete(request):
writeToFile.close()
- command = "systemctl restart crond"
+ virtualHostUtilities.leaveControl(path)
+
+ command = "sudo systemctl restart crond"
subprocess.call(shlex.split(command))
@@ -1099,37 +1176,51 @@ def submitRemoteBackups(request):
else:
final_json = json.dumps({'status': 0, 'error_message': sshkey[1]})
return HttpResponse(final_json)
- sshkey = sshkey[1]
- pathToSSH = "/root/.ssh/authorized_keys"
+ pubKey = sshkey[1]
- if not os.path.exists("/root/.ssh"):
- os.makedirs("/root/.ssh")
- if not os.path.exists(pathToSSH):
- f = open(pathToSSH,"w")
- f.close()
- else:
- if not os.path.exists(pathToSSH):
- f = open(pathToSSH,"w")
- f.close()
+ keyPath = "/home/cyberpanel/.ssh"
+
+ if not os.path.exists(keyPath):
+ os.makedirs(keyPath)
+
+ ## writeKey
+
+ authorized_keys = keyPath + "/authorized_keys"
presenseCheck = 0
-
- data = open(pathToSSH,"r").readlines()
-
- for items in data:
- if items.find(sshkey)>-1:
- presenseCheck = 1
+ try:
+ data = open(authorized_keys, "r").readlines()
+ for items in data:
+ if items.find(pubKey) > -1:
+ presenseCheck = 1
+ except:
+ pass
if presenseCheck == 0:
- writeToFile = open(pathToSSH, 'a')
+ writeToFile = open(authorized_keys, 'a')
writeToFile.writelines("#Added by CyberPanel\n")
writeToFile.writelines("\n")
- writeToFile.writelines(sshkey)
+ writeToFile.writelines(pubKey)
writeToFile.writelines("\n")
writeToFile.close()
+ ##
+
+ command = "sudo chown cyberpanel:cyberpanel /home/cyberpanel"
+ cmd = shlex.split(command)
+ res = subprocess.call(cmd)
+
+ command = "sudo chmod g-w /home/cyberpanel"
+ cmd = shlex.split(command)
+ res = subprocess.call(cmd)
+
+ os.chmod(keyPath, 0700)
+ os.chmod(authorized_keys, 0600)
+
+ ##
+
try:
finalData = json.dumps({'username': "admin","password": password})
diff --git a/baseTemplate/static/baseTemplate/assets/themes/frontend/color-schemes/default.css b/baseTemplate/static/baseTemplate/assets/themes/frontend/color-schemes/default.css
index 59beb63c4..d49b90eae 100755
--- a/baseTemplate/static/baseTemplate/assets/themes/frontend/color-schemes/default.css
+++ b/baseTemplate/static/baseTemplate/assets/themes/frontend/color-schemes/default.css
@@ -1,7 +1,84 @@
/* Default color schemes */
-@import url(https://fonts.googleapis.com/css?family=Raleway:300);
-@import url(https://fonts.googleapis.com/css?family=Open+Sans);
+/* Google imports */
+
+/* latin-ext */
+@font-face {
+ font-family: 'Raleway';
+ font-style: normal;
+ font-weight: 300;
+ src: local('Raleway Light'), local('Raleway-Light'), url(https://fonts.gstatic.com/s/raleway/v12/ZKwULyCG95tk6mOqHQfRBCEAvth_LlrfE80CYdSH47w.woff2) format('woff2');
+ unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
+}
+/* latin */
+@font-face {
+ font-family: 'Raleway';
+ font-style: normal;
+ font-weight: 300;
+ src: local('Raleway Light'), local('Raleway-Light'), url(https://fonts.gstatic.com/s/raleway/v12/-_Ctzj9b56b8RgXW8FArifk_vArhqVIZ0nv9q090hN8.woff2) format('woff2');
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
+}
+
+
+/* cyrillic-ext */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/K88pR3goAWT7BTt32Z01mxJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+0460-052F, U+20B4, U+2DE0-2DFF, U+A640-A69F;
+}
+/* cyrillic */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/RjgO7rYTmqiVp7vzi-Q5URJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
+}
+/* greek-ext */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/LWCjsQkB6EMdfHrEVqA1KRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+1F00-1FFF;
+}
+/* greek */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/xozscpT2726on7jbcb_pAhJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+0370-03FF;
+}
+/* vietnamese */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/59ZRklaO5bWGqF5A9baEERJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+0102-0103, U+1EA0-1EF9, U+20AB;
+}
+/* latin-ext */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/u-WUoqrET9fUeobQW7jkRRJtnKITppOI_IvcXXDNrsc.woff2) format('woff2');
+ unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
+}
+/* latin */
+@font-face {
+ font-family: 'Open Sans';
+ font-style: normal;
+ font-weight: 400;
+ src: local('Open Sans Regular'), local('OpenSans-Regular'), url(https://fonts.gstatic.com/s/opensans/v15/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2');
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
+}
+
+
+
/* General */
diff --git a/baseTemplate/templates/baseTemplate/index.html b/baseTemplate/templates/baseTemplate/index.html
index a19e8f345..360e8402f 100755
--- a/baseTemplate/templates/baseTemplate/index.html
+++ b/baseTemplate/templates/baseTemplate/index.html
@@ -21,7 +21,7 @@
-
+
diff --git a/databases/views.py b/databases/views.py
index c0b11ac84..0e410710d 100644
--- a/databases/views.py
+++ b/databases/views.py
@@ -324,7 +324,7 @@ def changePassword(request):
passwordCMD = "use mysql;SET PASSWORD FOR '" + userName + "'@'localhost' = PASSWORD('" + dbPassword + "');FLUSH PRIVILEGES;"
- command = 'mysql -u root -p' + password + ' -e "' + passwordCMD + '"'
+ command = 'sudo mysql -u root -p' + password + ' -e "' + passwordCMD + '"'
cmd = shlex.split(command)
res = subprocess.call(cmd)
diff --git a/filemanager_app/filemanager.py b/filemanager_app/filemanager.py
index 0e1292aab..fa81aa1d2 100755
--- a/filemanager_app/filemanager.py
+++ b/filemanager_app/filemanager.py
@@ -95,7 +95,13 @@ class FileManager:
if not os.path.exists(path) or not path.startswith(self.root):
return {'result': ''}
- command = 'chown -R nobody:nobody '+path
+ command = 'sudo chmod -R 775 '+path
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ command = 'sudo chown -R nobody:cyberpanel ' + path
cmd = shlex.split(command)
diff --git a/firewall/views.py b/firewall/views.py
index dcf2493fc..9df7cb9d1 100644
--- a/firewall/views.py
+++ b/firewall/views.py
@@ -150,7 +150,7 @@ def reloadFirewall(request):
if request.method == 'POST':
- command = 'firewall-cmd --reload'
+ command = 'sudo firewall-cmd --reload'
cmd = shlex.split(command)
@@ -185,7 +185,7 @@ def startFirewall(request):
if request.method == 'POST':
- command = 'systemctl start firewalld'
+ command = 'sudo systemctl start firewalld'
cmd = shlex.split(command)
@@ -220,7 +220,7 @@ def stopFirewall(request):
if request.method == 'POST':
- command = 'systemctl stop firewalld'
+ command = 'sudo systemctl stop firewalld'
cmd = shlex.split(command)
@@ -302,6 +302,14 @@ def getSSHConfigs(request):
if type=="1":
+ ## temporarily changing permission for sshd files
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /etc/ssh/sshd_config'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
pathToSSH = "/etc/ssh/sshd_config"
@@ -318,10 +326,27 @@ def getSSHConfigs(request):
if items.find("Port") > -1 and not items.find("GatewayPorts") > -1:
sshPort = items.split(" ")[1].strip("\n")
+ ## changing permission back
+
+ command = 'sudo chown -R root:root /etc/ssh/sshd_config'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
final_dic = {'permitRootLogin': permitRootLogin, 'sshPort': sshPort}
final_json = json.dumps(final_dic)
return HttpResponse(final_json)
else:
+
+ ## temporarily changing permission for sshd files
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
pathToKeyFile = "/root/.ssh/authorized_keys"
json_data = "["
@@ -352,6 +377,14 @@ def getSSHConfigs(request):
json_data = json_data + ']'
+ ## changing permission back
+
+ command = 'sudo chown -R root:root /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
final_json = json.dumps({'status': 1, 'error_message': "None", "data": json_data})
return HttpResponse(final_json)
@@ -381,12 +414,13 @@ def saveSSHConfigs(request):
sshPort = data['sshPort']
rootLogin = data['rootLogin']
- command = 'semanage port -a -t ssh_port_t -p tcp ' +sshPort
+ command = 'sudo semanage port -a -t ssh_port_t -p tcp ' +sshPort
cmd = shlex.split(command)
res = subprocess.call(cmd)
+
FirewallUtilities.addRule('tcp',sshPort)
try:
@@ -399,6 +433,17 @@ def saveSSHConfigs(request):
newFireWallRule.save()
+ ## temporarily changing permission for sshd files
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /etc/ssh/sshd_config'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+
if rootLogin == True:
rootLogin = "PermitRootLogin yes\n"
else:
@@ -425,12 +470,22 @@ def saveSSHConfigs(request):
writeToFile.writelines(items)
writeToFile.close()
- command = 'systemctl restart sshd'
+ command = 'sudo systemctl restart sshd'
cmd = shlex.split(command)
res = subprocess.call(cmd)
+ ## changin back permissions
+
+ command = 'sudo chown -R root:root /etc/ssh/sshd_config'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
final_dic = {'saveStatus': 1}
final_json = json.dumps(final_dic)
@@ -454,6 +509,16 @@ def deleteSSHKey(request):
data = json.loads(request.body)
key = data['key']
+ # temp change of permissions
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
keyPart = key.split(" ")[1]
pathToSSH = "/root/.ssh/authorized_keys"
@@ -469,6 +534,16 @@ def deleteSSHKey(request):
writeToFile.writelines(items)
writeToFile.close()
+ # change back permissions
+
+ command = 'sudo chown -R root:root /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
final_dic = {'delete_status': 1}
final_json = json.dumps(final_dic)
@@ -492,6 +567,16 @@ def addSSHKey(request):
data = json.loads(request.body)
key = data['key']
+ # temp change of permissions
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
sshDir = "/root/.ssh"
pathToSSH = "/root/.ssh/authorized_keys"
@@ -516,6 +601,16 @@ def addSSHKey(request):
writeToFile.writelines("\n")
writeToFile.close()
+ # change back permissions
+
+ command = 'sudo chown -R root:root /root'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
final_dic = {'add_status': 1}
final_json = json.dumps(final_dic)
diff --git a/install/firewallUtilities.py b/install/firewallUtilities.py
index 5bba51375..0020774da 100644
--- a/install/firewallUtilities.py
+++ b/install/firewallUtilities.py
@@ -15,7 +15,7 @@ class FirewallUtilities:
def addRule(proto,port):
try:
if port == "21":
- command = "firewall-cmd --add-service=ftp --permanent"
+ command = "sudo firewall-cmd --add-service=ftp --permanent"
cmd = shlex.split(command)
res = subprocess.call(cmd)
@@ -26,7 +26,7 @@ class FirewallUtilities:
ruleProtocol = 'port protocol="' + proto + '"'
rulePort = 'port="' + port + '"'
- command = "firewall-cmd --permanent --zone=public --add-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
+ command = "sudo firewall-cmd --permanent --zone=public --add-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
cmd = shlex.split(command)
@@ -51,7 +51,7 @@ class FirewallUtilities:
def deleteRule(proto, port):
try:
if port=="21":
- command = "firewall-cmd --remove-service=ftp --permanent"
+ command = "sudo firewall-cmd --remove-service=ftp --permanent"
cmd = shlex.split(command)
res = subprocess.call(cmd)
@@ -62,7 +62,7 @@ class FirewallUtilities:
ruleProtocol = 'port protocol="' + proto + '"'
rulePort = 'port="' + port + '"'
- command = "firewall-cmd --permanent --zone=public --remove-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
+ command = "sudo firewall-cmd --permanent --zone=public --remove-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
cmd = shlex.split(command)
diff --git a/install/gun-configs/gunicorn.service b/install/gun-configs/gunicorn.service
index 4d92565fb..65484c768 100644
--- a/install/gun-configs/gunicorn.service
+++ b/install/gun-configs/gunicorn.service
@@ -5,8 +5,8 @@ After=network.target
[Service]
PIDFile=/run/gunicorn/pid
-User=root
-Group=root
+User=cyberpanel
+Group=cyberpanel
RuntimeDirectory=gunicorn
WorkingDirectory=/usr/local/CyberCP
ExecStart=/usr/bin/gunicorn --pid /run/gunicorn/gucpid \
diff --git a/install/install.py b/install/install.py
index 00e442ecf..5b52b7738 100644
--- a/install/install.py
+++ b/install/install.py
@@ -18,6 +18,85 @@ class preFlightsChecks:
self.cwd = cwd
self.server_root_path = rootPath
+
+ def setup_account_cyberpanel(self):
+ try:
+ command = "yum install sudo -y"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "adduser cyberpanel"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "usermod -aG wheel cyberpanel"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ###############################
+
+ path = "/etc/sudoers"
+
+ data = open(path,'r').readlines()
+
+ writeToFile = open(path,'w')
+
+ for items in data:
+ if items.find("wheel ALL=(ALL) NOPASSWD: ALL")>-1:
+ writeToFile.writelines("%wheel ALL=(ALL) NOPASSWD: ALL")
+ else:
+ writeToFile.writelines(items)
+
+ writeToFile.close()
+
+ ###############################
+
+ command = "mkdir /etc/letsencrypt"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+
+ command = "chown cyberpanel:cyberpanel /etc/letsencrypt"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+
+ command = "usermod -a -G root cyberpanel"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "usermod -a -G nobody cyberpanel"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ except:
+ logging.InstallLog.writeToFile("[116] setup_account_cyberpanel")
+
+
def yum_update(self):
try:
@@ -522,19 +601,23 @@ class preFlightsChecks:
def fix_selinux_issue(self):
- cmd = []
+ try:
- cmd.append("setsebool")
- cmd.append("-P")
- cmd.append("httpd_can_network_connect")
- cmd.append("1")
+ cmd = []
- res = subprocess.call(cmd)
+ cmd.append("setsebool")
+ cmd.append("-P")
+ cmd.append("httpd_can_network_connect")
+ cmd.append("1")
- if res == 1:
+ res = subprocess.call(cmd)
+
+ if res == 1:
+ logging.InstallLog.writeToFile("fix_selinux_issue problem")
+ else:
+ pass
+ except BaseException,msg:
logging.InstallLog.writeToFile("fix_selinux_issue problem")
- else:
- pass
def install_psmisc(self):
@@ -599,7 +682,7 @@ class preFlightsChecks:
cmd = []
cmd.append("wget")
- cmd.append("http://cyberpanel.net/CyberPanel.1.5.tar.gz")
+ cmd.append("http://cyberpanel.net/CyberPanelTemp.tar.gz")
res = subprocess.call(cmd)
@@ -618,7 +701,7 @@ class preFlightsChecks:
cmd.append("tar")
cmd.append("zxf")
- cmd.append("CyberPanel.1.5.tar.gz")
+ cmd.append("CyberPanelTemp.tar.gz")
res = subprocess.call(cmd)
@@ -1375,7 +1458,7 @@ class preFlightsChecks:
def downoad_and_install_raindloop(self):
try:
- command = 'chown -R nobody:nobody /usr/local/lscp/cyberpanel/'
+ command = 'chown -R nobody:cyberpanel /usr/local/lscp/cyberpanel/'
cmd = shlex.split(command)
@@ -1795,7 +1878,48 @@ class preFlightsChecks:
while (1):
- command = 'chown -R nobody:nobody /usr/local/lsws'
+ command = 'chown -R nobody:cyberpanel /usr/local/lsws'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = 'chown -R nobody:cyberpanel /home'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+
+ command = "chown cyberpanel:cyberpanel /usr/local/lscp"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "sudo chmod -R 775 /home"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "sudo chmod -R 775 /usr/local/lsws"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ ##
+
+ command = "sudo chmod -R 775 /etc/postfix"
cmd = shlex.split(command)
@@ -1842,7 +1966,6 @@ def Main():
checks = preFlightsChecks("/usr/local/lsws/",args.publicip,"/usr/local",cwd)
-
checks.checkPythonVersion()
checks.yum_update()
checks.installCyberPanelRepo()
@@ -1857,11 +1980,9 @@ def Main():
checks.install_pexpect()
checks.install_python_mysql_library()
checks.install_wget()
+ checks.setup_account_cyberpanel()
checks.install_gunicorn()
checks.install_psutil()
-
-
-
checks.setup_gunicorn()
import installCyberPanel
diff --git a/install/installCyberPanel.py b/install/installCyberPanel.py
index 91828fc5a..65bee0751 100644
--- a/install/installCyberPanel.py
+++ b/install/installCyberPanel.py
@@ -644,7 +644,11 @@ class InstallCyberPanel:
print("###############################################")
+ commad = "usermod -a -G cyberpanel ftpuser"
+ cmd = shlex.split(commad)
+
+ subprocess.call(cmd)
except OSError, msg:
logging.InstallLog.writeToFile(str(msg) + " [installPureFTPD]")
@@ -933,27 +937,58 @@ class InstallCyberPanel:
while (1):
- cmd.append("yum")
- cmd.append("-y")
- cmd.append("install")
- cmd.append("certbot")
+ if subprocess.check_output('systemd-detect-virt').find("openvz") > -1:
- res = subprocess.call(cmd)
+ command = "pip install pyOpenSSL==16.2.0"
- if res == 1:
- print("###############################################")
- print(" Could not install CertBot ")
- print("###############################################")
- logging.InstallLog.writeToFile("Certbot not installed" + " [installCertBot]")
- count = count + 1
- print("Trying again, try number: " + str(count)+"\n")
- if count == 3:
+ cmd = shlex.split(command)
+
+ subprocess.call(cmd)
+
+ command = "pip install certbot"
+
+ cmd = shlex.split(command)
+
+ subprocess.call(cmd)
+
+ if res == 1:
+ print("###############################################")
+ print(" Could not install CertBot ")
+ print("###############################################")
+ logging.InstallLog.writeToFile("Certbot not installed" + " [installCertBot]")
+ count = count + 1
+ print("Trying again, try number: " + str(count)+"\n")
+ if count == 3:
+ break
+ else:
+ print("###############################################")
+ print(" Certbot Installed ")
+ print("###############################################")
break
+
else:
- print("###############################################")
- print(" Certbot Installed ")
- print("###############################################")
- break
+
+ cmd.append("yum")
+ cmd.append("-y")
+ cmd.append("install")
+ cmd.append("certbot")
+
+ res = subprocess.call(cmd)
+
+ if res == 1:
+ print("###############################################")
+ print(" Could not install CertBot ")
+ print("###############################################")
+ logging.InstallLog.writeToFile("Certbot not installed" + " [installCertBot]")
+ count = count + 1
+ print("Trying again, try number: " + str(count)+"\n")
+ if count == 3:
+ break
+ else:
+ print("###############################################")
+ print(" Certbot Installed ")
+ print("###############################################")
+ break
diff --git a/install/installLog.py b/install/installLog.py
index bd2a3b476..c38f015f5 100644
--- a/install/installLog.py
+++ b/install/installLog.py
@@ -8,14 +8,3 @@ class InstallLog:
file = open(InstallLog.fileName,'a')
file.writelines(message + "\n")
file.close()
-
- @staticmethod
- def readLastNFiles(numberOfLines):
- try:
-
- lastFewLines = subprocess.check_output(["tail", "-n",str(numberOfLines),CyberCPLogFileWriter.fileName])
-
- return lastFewLines
-
- except subprocess.CalledProcessError,msg:
- CyberCPLogFileWriter.writeToFile(str(msg) + "[readLastNFiles]")
diff --git a/locale/ja/LC_MESSAGES/django.mo b/locale/ja/LC_MESSAGES/django.mo
new file mode 100644
index 000000000..2822c58bc
Binary files /dev/null and b/locale/ja/LC_MESSAGES/django.mo differ
diff --git a/locale/ja/LC_MESSAGES/django.po b/locale/ja/LC_MESSAGES/django.po
new file mode 100644
index 000000000..94b23f4fa
--- /dev/null
+++ b/locale/ja/LC_MESSAGES/django.po
@@ -0,0 +1,2832 @@
+# CyberPanel Translation File.
+# Copyright (C) 2017 LiteSpeedTech
+# This file is distributed under the same license as the CyberPanel package.
+# FIRST AUTHOR , 2017.
+#
+#: baseTemplate/templates/baseTemplate/index.html:211
+#: baseTemplate/templates/baseTemplate/index.html:301
+#: baseTemplate/templates/baseTemplate/index.html:356
+#: baseTemplate/templates/baseTemplate/index.html:362
+#: baseTemplate/templates/baseTemplate/index.html:368
+#: baseTemplate/templates/baseTemplate/index.html:374
+#: baseTemplate/templates/baseTemplate/index.html:380
+#: baseTemplate/templates/baseTemplate/index.html:386
+msgid ""
+msgstr ""
+"Project-Id-Version: CyberPanel\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2017-11-02 02:08+0500\n"
+"PO-Revision-Date: 2017-10-31 23:38+0900\n"
+"Last-Translator: @ kazuo210 \n"
+"Language-Team: LANGUAGE \n"
+"Language: ja\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Generator: Poedit 1.8.7.1\n"
+
+#: CyberCP/settings.py:167
+msgid "English"
+msgstr "英語"
+
+#: CyberCP/settings.py:168
+msgid "Chinese"
+msgstr "中国語"
+
+#: CyberCP/settings.py:169
+msgid "Bulgarian"
+msgstr "ブルガリア語"
+
+#: CyberCP/settings.py:170
+msgid "Portuguese"
+msgstr "ポルトガル語"
+
+#: CyberCP/settings.py:171
+msgid "Japanese"
+msgstr "日本語"
+
+#: CyberCP/settings.py:172
+msgid "Bosnian"
+msgstr "ボスニア語"
+
+#: backup/templates/backup/backup.html:3 backup/templates/backup/backup.html:13
+#: backup/templates/backup/backup.html:20
+msgid "Back up Website"
+msgstr "Web サイトのバックアップ"
+
+#: backup/templates/backup/backup.html:14
+msgid "This page can be used to Back up your websites"
+msgstr "このページは、Web サイトをバックアップするために使用することができます"
+
+#: backup/templates/backup/backup.html:29
+#: databases/templates/databases/createDatabase.html:28
+#: databases/templates/databases/deleteDatabase.html:28
+#: ftp/templates/ftp/createFTPAccount.html:28
+#: mailServer/templates/mailServer/changeEmailPassword.html:28
+#: mailServer/templates/mailServer/createEmailAccount.html:28
+#: mailServer/templates/mailServer/deleteEmailAccount.html:28
+#: manageSSL/templates/manageSSL/manageSSL.html:29
+#: manageSSL/templates/manageSSL/sslForHostName.html:29
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:28
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:28
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:29
+msgid "Select Website"
+msgstr "Web サイトを選択"
+
+#: backup/templates/backup/backup.html:40
+#: backup/templates/backup/backupSchedule.html:90
+msgid "Destination"
+msgstr "宛先"
+
+#: backup/templates/backup/backup.html:43
+#: baseTemplate/templates/baseTemplate/homePage.html:12
+msgid "Home"
+msgstr "ホーム"
+
+#: backup/templates/backup/backup.html:59
+#: backup/templates/backup/restore.html:62
+msgid "File Name"
+msgstr "ファイル名"
+
+#: backup/templates/backup/backup.html:60
+#: backup/templates/backup/backup.html:105
+#: backup/templates/backup/restore.html:63
+#: baseTemplate/templates/baseTemplate/index.html:390
+#: firewall/templates/firewall/firewall.html:36
+#: managePHP/templates/managePHP/installExtensions.html:65
+msgid "Status"
+msgstr "状態"
+
+#: backup/templates/backup/backup.html:65
+msgid "Running"
+msgstr "実行中"
+
+#: backup/templates/backup/backup.html:80
+#: baseTemplate/templates/baseTemplate/index.html:561
+msgid "Create Back up"
+msgstr "バックアップの作成"
+
+#: backup/templates/backup/backup.html:87
+msgid "Cancel Backup"
+msgstr "バックアップを中止"
+
+#: backup/templates/backup/backup.html:101
+#: backup/templates/backup/backupDestinations.html:90
+#: backup/templates/backup/backupSchedule.html:89
+#: databases/templates/databases/listDataBases.html:87
+#: dns/templates/dns/addDeleteDNSRecords.html:129
+#: firewall/templates/firewall/firewall.html:135
+#: ftp/templates/ftp/listFTPAccounts.html:87
+#: managePHP/templates/managePHP/installExtensions.html:61
+msgid "ID"
+msgstr "ID"
+
+#: backup/templates/backup/backup.html:102
+msgid "File"
+msgstr "ファイル"
+
+#: backup/templates/backup/backup.html:103
+msgid "Date"
+msgstr "日付"
+
+#: backup/templates/backup/backup.html:104
+#: ftp/templates/ftp/listFTPAccounts.html:90
+msgid "Size"
+msgstr "サイズ"
+
+#: backup/templates/backup/backup.html:106
+#: backup/templates/backup/backupDestinations.html:93
+#: backup/templates/backup/backupSchedule.html:92
+#: dns/templates/dns/addDeleteDNSRecords.html:134
+#: firewall/templates/firewall/firewall.html:140
+#: firewall/templates/firewall/secureSSH.html:122
+#: websiteFunctions/templates/websiteFunctions/website.html:451
+msgid "Delete"
+msgstr "削除"
+
+#: backup/templates/backup/backup.html:130
+msgid "Cannot delete website, Error message: "
+msgstr "Web サイトを削除できません、エラーメッセージ: "
+
+#: backup/templates/backup/backup.html:134
+msgid "Successfully Deleted"
+msgstr "削除されました"
+
+#: backup/templates/backup/backupDestinations.html:3
+#: backup/templates/backup/backupDestinations.html:14
+#: backup/templates/backup/backupDestinations.html:21
+msgid "Set up Back up Destinations"
+msgstr "バックアップ先の設定"
+
+#: backup/templates/backup/backupDestinations.html:15
+msgid "On this page you can set up your Back up destinations. (SFTP)"
+msgstr "このページでは、バックアップ先を設定できます。 (SFTP)"
+
+#: backup/templates/backup/backupDestinations.html:30
+#: backup/templates/backup/remoteBackups.html:29
+#: dns/templates/dns/addDeleteDNSRecords.html:60
+#: dns/templates/dns/createNameServer.html:48
+#: dns/templates/dns/createNameServer.html:65
+#: firewall/templates/firewall/firewall.html:138
+msgid "IP Address"
+msgstr "IP アドレス"
+
+#: backup/templates/backup/backupDestinations.html:38
+#: backup/templates/backup/remoteBackups.html:37
+#: databases/templates/databases/createDatabase.html:58
+#: databases/templates/databases/listDataBases.html:90
+#: ftp/templates/ftp/listFTPAccounts.html:91
+#: mailServer/templates/mailServer/changeEmailPassword.html:52
+#: mailServer/templates/mailServer/createEmailAccount.html:51
+#: userManagment/templates/userManagment/createUser.html:123
+#: userManagment/templates/userManagment/modifyUser.html:106
+msgid "Password"
+msgstr "パスワード"
+
+#: backup/templates/backup/backupDestinations.html:48
+#: backup/templates/backup/backupSchedule.html:54
+#: baseTemplate/templates/baseTemplate/index.html:563
+msgid "Add Destination"
+msgstr "バックアップ先の追加"
+
+#: backup/templates/backup/backupDestinations.html:62
+#: backup/templates/backup/backupDestinations.html:66
+msgid "Connection to"
+msgstr "接続"
+
+#: backup/templates/backup/backupDestinations.html:62
+msgid "failed. Please delete and re-add."
+msgstr "失敗しました。削除して再追加してください。"
+
+#: backup/templates/backup/backupDestinations.html:66
+msgid "successful."
+msgstr "成功。"
+
+#: backup/templates/backup/backupDestinations.html:70
+msgid "Cannot add destination. Error message:"
+msgstr "宛先を追加できません。エラーメッセージ:"
+
+#: backup/templates/backup/backupDestinations.html:74
+msgid "Destination Added."
+msgstr "追加された宛先。"
+
+#: backup/templates/backup/backupDestinations.html:78
+#: backup/templates/backup/backupSchedule.html:77
+#: backup/templates/backup/restore.html:95
+#: databases/templates/databases/createDatabase.html:88
+#: databases/templates/databases/deleteDatabase.html:73
+#: dns/templates/dns/addDeleteDNSRecords.html:185
+#: dns/templates/dns/createDNSZone.html:60
+#: dns/templates/dns/createNameServer.html:100
+#: dns/templates/dns/deleteDNSZone.html:67
+#: mailServer/templates/mailServer/changeEmailPassword.html:80
+#: mailServer/templates/mailServer/createEmailAccount.html:79
+#: mailServer/templates/mailServer/deleteEmailAccount.html:79
+#: manageSSL/templates/manageSSL/manageSSL.html:60
+#: userManagment/templates/userManagment/createUser.html:162
+#: userManagment/templates/userManagment/modifyUser.html:138
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:77
+#: websiteFunctions/templates/websiteFunctions/website.html:157
+#: websiteFunctions/templates/websiteFunctions/website.html:363
+#: websiteFunctions/templates/websiteFunctions/website.html:405
+#: websiteFunctions/templates/websiteFunctions/website.html:535
+#: websiteFunctions/templates/websiteFunctions/website.html:590
+#: websiteFunctions/templates/websiteFunctions/website.html:645
+#: websiteFunctions/templates/websiteFunctions/website.html:792
+msgid "Could not connect to server. Please refresh this page."
+msgstr "サーバーに接続できませんでした。 このページを更新してください。"
+
+#: backup/templates/backup/backupDestinations.html:91
+msgid "IP"
+msgstr "IP"
+
+#: backup/templates/backup/backupDestinations.html:92
+#: backup/templates/backup/backupDestinations.html:100
+msgid "Check Connection"
+msgstr "接続を確認"
+
+#: backup/templates/backup/backupSchedule.html:3
+msgid "Schedule Back up - CyberPanel"
+msgstr "バックアップスケジュール - CyberPanel"
+
+#: backup/templates/backup/backupSchedule.html:13
+#: backup/templates/backup/backupSchedule.html:20
+#: baseTemplate/templates/baseTemplate/index.html:564
+msgid "Schedule Back up"
+msgstr "バックアップスケジュール"
+
+#: backup/templates/backup/backupSchedule.html:14
+msgid ""
+"On this page you can schedule Back ups to localhost or remote server (If you "
+"have added one)."
+msgstr ""
+"このページでは、ローカルホストまたはリモートサーバーへのバックアップをスケ"
+"ジュールすることができます(追加した場合)。"
+
+#: backup/templates/backup/backupSchedule.html:29
+msgid "Select Destination"
+msgstr "移動先を選択"
+
+#: backup/templates/backup/backupSchedule.html:40
+msgid "Select Frequency"
+msgstr "実行間隔を選択"
+
+#: backup/templates/backup/backupSchedule.html:43
+msgid "Daily"
+msgstr "日次"
+
+#: backup/templates/backup/backupSchedule.html:44
+msgid "Weekly"
+msgstr "週次"
+
+#: backup/templates/backup/backupSchedule.html:69
+msgid "Cannot add schedule. Error message:"
+msgstr "スケジュールを追加できません。エラーメッセージ:"
+
+#: backup/templates/backup/backupSchedule.html:73
+msgid "Schedule Added"
+msgstr "スケジュールの追加"
+
+#: backup/templates/backup/backupSchedule.html:91
+msgid "Frequency"
+msgstr "実行間隔"
+
+#: backup/templates/backup/index.html:3
+msgid "Back up Home - CyberPanel"
+msgstr "バックアップ ホーム - CyberPanel"
+
+#: backup/templates/backup/index.html:13 backup/templates/backup/index.html:29
+#: backup/templates/backup/index.html:45
+#: baseTemplate/templates/baseTemplate/homePage.html:268
+#: baseTemplate/templates/baseTemplate/homePage.html:271
+#: baseTemplate/templates/baseTemplate/homePage.html:463
+#: baseTemplate/templates/baseTemplate/homePage.html:466
+#: baseTemplate/templates/baseTemplate/index.html:554
+#: baseTemplate/templates/baseTemplate/index.html:556
+#: baseTemplate/templates/baseTemplate/index.html:573
+msgid "Back up"
+msgstr "バックアップ"
+
+#: backup/templates/backup/index.html:14
+msgid "Back up and restore sites."
+msgstr "バックアップし、サイトを復元します。"
+
+#: backup/templates/backup/index.html:19
+#: baseTemplate/templates/baseTemplate/homePage.html:164
+#: databases/templates/databases/index.html:19 dns/templates/dns/index.html:19
+#: firewall/templates/firewall/index.html:19 ftp/templates/ftp/index.html:19
+#: mailServer/templates/mailServer/index.html:19
+#: managePHP/templates/managePHP/index.html:18
+#: manageSSL/templates/manageSSL/index.html:20
+#: packages/templates/packages/index.html:19
+#: serverLogs/templates/serverLogs/index.html:19
+#: serverStatus/templates/serverStatus/index.html:19
+#: tuning/templates/tuning/index.html:18
+#: userManagment/templates/userManagment/index.html:20
+#: websiteFunctions/templates/websiteFunctions/index.html:20
+msgid "Available Functions"
+msgstr "使用可能な機能"
+
+#: backup/templates/backup/index.html:27 backup/templates/backup/index.html:43
+msgid "Back up Site"
+msgstr "サイトのバックアップ"
+
+#: backup/templates/backup/index.html:55
+#: baseTemplate/templates/baseTemplate/index.html:562
+msgid "Restore Back up"
+msgstr "バックアップの復元"
+
+#: backup/templates/backup/index.html:57
+#: backup/templates/backup/restore.html:45
+msgid "Restore"
+msgstr "復元"
+
+#: backup/templates/backup/remoteBackups.html:3
+msgid "Transfer Websites from Remote Server - CyberPanel"
+msgstr "リモートサーバーからWebサイトを転送 - CyberPanel"
+
+#: backup/templates/backup/remoteBackups.html:14
+#: backup/templates/backup/remoteBackups.html:21
+msgid "Remote Backups"
+msgstr "リモートバックアップ"
+
+#: backup/templates/backup/remoteBackups.html:15
+msgid "This feature can import website(s) from remote server"
+msgstr "この機能は、リモート サーバーからウェブサイトをインポートします"
+
+#: backup/templates/backup/remoteBackups.html:46
+msgid "Fetch Accounts"
+msgstr "アカウントの取得"
+
+#: backup/templates/backup/remoteBackups.html:55
+msgid "Start Transfer"
+msgstr "転送を開始"
+
+#: backup/templates/backup/remoteBackups.html:59
+#: websiteFunctions/templates/websiteFunctions/website.html:296
+msgid "Cancel"
+msgstr "キャンセル"
+
+#: backup/templates/backup/remoteBackups.html:72
+msgid "Could not connect, please refresh this page."
+msgstr "接続できませんでした。このページを更新してください。"
+
+#: backup/templates/backup/remoteBackups.html:76
+msgid "Accounts Successfully Fetched from remote server."
+msgstr "アカウントはリモートサーバーから取得されました。"
+
+#: backup/templates/backup/remoteBackups.html:80
+msgid "Backup Process successfully started."
+msgstr "バックアップ処理が開始されました。"
+
+#: backup/templates/backup/remoteBackups.html:84
+msgid "Backup successfully cancelled."
+msgstr "バックアップはキャンセルされました。"
+
+#: backup/templates/backup/remoteBackups.html:96
+msgid "Search Accounts.."
+msgstr "アカウントを検索。"
+
+#: backup/templates/backup/remoteBackups.html:107
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:65
+msgid "Website"
+msgstr "Web サイト"
+
+#: backup/templates/backup/remoteBackups.html:108
+#: baseTemplate/templates/baseTemplate/homePage.html:333
+#: baseTemplate/templates/baseTemplate/index.html:626
+#: baseTemplate/templates/baseTemplate/index.html:628
+#: managePHP/templates/managePHP/installExtensions.html:62
+msgid "PHP"
+msgstr "PHP"
+
+#: backup/templates/backup/remoteBackups.html:109
+#: packages/templates/packages/createPackage.html:99
+#: packages/templates/packages/deletePackage.html:63
+#: packages/templates/packages/modifyPackage.html:112
+msgid "Package"
+msgstr "パッケージ"
+
+#: backup/templates/backup/remoteBackups.html:110
+#: baseTemplate/templates/baseTemplate/index.html:514
+#: baseTemplate/templates/baseTemplate/index.html:516
+#: userManagment/templates/userManagment/createUser.html:47
+#: userManagment/templates/userManagment/modifyUser.html:54
+#: userManagment/templates/userManagment/userProfile.html:50
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:60
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:67
+msgid "Email"
+msgstr "メール"
+
+#: backup/templates/backup/restore.html:3
+msgid "Restore Website - CyberPanel"
+msgstr "Web サイトの復元 - CyberPanel"
+
+#: backup/templates/backup/restore.html:14
+#: backup/templates/backup/restore.html:21
+msgid "Restore Website"
+msgstr "Web サイトの復元"
+
+#: backup/templates/backup/restore.html:15
+msgid ""
+"This page can be used to restore your websites, Back up should be generated "
+"from CyberPanel Back up generation tool, it will detect all Back ups under "
+"/home/backup."
+msgstr ""
+"このページは、Web サイトを復元するために使用することができます。バックアップ"
+"は CyberPanel バックアップ生成ツールから生成され、/home/backup"
+"strong>下のすべてのバックアップを検出します。"
+
+#: backup/templates/backup/restore.html:30
+msgid "Select Back up"
+msgstr "バックアップを選択"
+
+#: backup/templates/backup/restore.html:86
+#: databases/templates/databases/deleteDatabase.html:64
+#: databases/templates/databases/listDataBases.html:54
+#: firewall/templates/firewall/firewall.html:166
+#: managePHP/templates/managePHP/editPHPConfig.html:212
+msgid "Error message:"
+msgstr "エラーメッセージ:"
+
+#: backup/templates/backup/restore.html:90
+msgid "Site related to this Back up already exists."
+msgstr "このバックアップに関連するサイトは既に存在します。"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:3
+msgid "Home - CyberPanel"
+msgstr "ホーム - CyberPanel"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:13
+msgid "Use the tabs to navigate through the control panel."
+msgstr "タブを使用して、コントロール パネルを操作します。"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:23
+#: websiteFunctions/templates/websiteFunctions/website.html:33
+msgid "Usage"
+msgstr "使用量"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:34
+#: baseTemplate/templates/baseTemplate/index.html:221
+msgid "CPU Usage"
+msgstr "CPU の使用量"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:55
+#: baseTemplate/templates/baseTemplate/index.html:232
+msgid "Ram Usage"
+msgstr "Ram の使用量"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:74
+msgid "Disk Usage '/'"
+msgstr "ディスクの使用量 '/'"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:98
+msgid "HTTP Statistics"
+msgstr "HTTP の統計情報"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:107
+msgid "Available/Max Connections"
+msgstr "利用可能/最大 接続数"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:118
+msgid "Available/Max SSL Connections"
+msgstr "利用可能/最大 SSL 接続数"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:127
+msgid "Requests Processing"
+msgstr "リクエスト処理数"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:136
+msgid "Total Requests"
+msgstr "合計リクエスト数"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:175
+#: baseTemplate/templates/baseTemplate/homePage.html:389
+#: userManagment/templates/userManagment/index.html:13
+msgid "User Functions"
+msgstr "ユーザ機能"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:178
+#: baseTemplate/templates/baseTemplate/homePage.html:392
+#: baseTemplate/templates/baseTemplate/index.html:426
+#: baseTemplate/templates/baseTemplate/index.html:427
+#: baseTemplate/templates/baseTemplate/index.html:428
+msgid "Users"
+msgstr "ユーザー"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:188
+#: baseTemplate/templates/baseTemplate/homePage.html:402
+#: websiteFunctions/templates/websiteFunctions/index.html:13
+msgid "Website Functions"
+msgstr "Web サイト機能"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:191
+#: baseTemplate/templates/baseTemplate/homePage.html:405
+#: baseTemplate/templates/baseTemplate/index.html:360
+#: baseTemplate/templates/baseTemplate/index.html:444
+#: baseTemplate/templates/baseTemplate/index.html:445
+#: baseTemplate/templates/baseTemplate/index.html:446
+#: websiteFunctions/templates/websiteFunctions/listWebsites.html:21
+msgid "Websites"
+msgstr "Web サイト"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:201
+msgid "Add/Modify Packages"
+msgstr "パッケージの追加/変更"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:204
+#: baseTemplate/templates/baseTemplate/index.html:366
+#: baseTemplate/templates/baseTemplate/index.html:461
+#: baseTemplate/templates/baseTemplate/index.html:463
+#: packages/templates/packages/index.html:13
+msgid "Packages"
+msgstr "パッケージ"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:225
+#: baseTemplate/templates/baseTemplate/homePage.html:415
+#: databases/templates/databases/index.html:12
+msgid "Database Functions"
+msgstr "データベース機能"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:228
+#: baseTemplate/templates/baseTemplate/homePage.html:418
+#: baseTemplate/templates/baseTemplate/index.html:477
+#: baseTemplate/templates/baseTemplate/index.html:478
+#: baseTemplate/templates/baseTemplate/index.html:479
+#: packages/templates/packages/createPackage.html:67
+#: packages/templates/packages/modifyPackage.html:73
+#: websiteFunctions/templates/websiteFunctions/website.html:44
+msgid "Databases"
+msgstr "データベース"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:237
+#: baseTemplate/templates/baseTemplate/homePage.html:438
+msgid "Control DNS"
+msgstr "DNS制御"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:240
+#: baseTemplate/templates/baseTemplate/homePage.html:441
+#: baseTemplate/templates/baseTemplate/index.html:372
+#: baseTemplate/templates/baseTemplate/index.html:495
+#: baseTemplate/templates/baseTemplate/index.html:497
+msgid "DNS"
+msgstr "DNS"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:250
+#: baseTemplate/templates/baseTemplate/homePage.html:451
+#: ftp/templates/ftp/index.html:12
+msgid "FTP Functions"
+msgstr "FTP 機能"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:253
+#: baseTemplate/templates/baseTemplate/homePage.html:454
+#: baseTemplate/templates/baseTemplate/index.html:378
+#: baseTemplate/templates/baseTemplate/index.html:536
+#: baseTemplate/templates/baseTemplate/index.html:538
+#: websiteFunctions/templates/websiteFunctions/website.html:39
+msgid "FTP"
+msgstr "FTP"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:280
+#: baseTemplate/templates/baseTemplate/homePage.html:283
+#: baseTemplate/templates/baseTemplate/homePage.html:483
+#: baseTemplate/templates/baseTemplate/homePage.html:486
+#: packages/templates/packages/createPackage.html:75
+#: packages/templates/packages/modifyPackage.html:80
+msgid "Emails"
+msgstr "メール"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:293
+#: baseTemplate/templates/baseTemplate/homePage.html:296
+#: tuning/templates/tuning/index.html:12
+msgid "Server Tuning"
+msgstr "サーバーのチューニング"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:317
+#: baseTemplate/templates/baseTemplate/homePage.html:320
+#: baseTemplate/templates/baseTemplate/index.html:607
+#: baseTemplate/templates/baseTemplate/index.html:609
+#: baseTemplate/templates/baseTemplate/index.html:642
+#: serverStatus/templates/serverStatus/index.html:13
+msgid "Server Status"
+msgstr "サーバーの状態"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:330
+msgid "PHP Configurations"
+msgstr "PHPの設定"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:342
+#: baseTemplate/templates/baseTemplate/homePage.html:345
+#: baseTemplate/templates/baseTemplate/index.html:644
+#: websiteFunctions/templates/websiteFunctions/website.html:113
+msgid "Logs"
+msgstr "ログ"
+
+#: baseTemplate/templates/baseTemplate/homePage.html:365
+#: baseTemplate/templates/baseTemplate/homePage.html:368
+#: baseTemplate/templates/baseTemplate/index.html:660
+#: baseTemplate/templates/baseTemplate/index.html:662
+msgid "Security"
+msgstr "セキュリティ"
+
+#: baseTemplate/templates/baseTemplate/index.html:212
+msgid "CPU Status"
+msgstr "CPU の状態"
+
+#: baseTemplate/templates/baseTemplate/index.html:241
+#: websiteFunctions/templates/websiteFunctions/website.html:51
+#: websiteFunctions/templates/websiteFunctions/website.html:72
+msgid "Disk Usage"
+msgstr "ディスクの使用量"
+
+#: baseTemplate/templates/baseTemplate/index.html:275
+#: baseTemplate/templates/baseTemplate/index.html:278
+#: baseTemplate/templates/baseTemplate/index.html:282
+msgid "CyberPanel"
+msgstr "CyberPanel"
+
+#: baseTemplate/templates/baseTemplate/index.html:280
+#: baseTemplate/templates/baseTemplate/index.html:284
+msgid "Web Hosting Control Panel"
+msgstr "Web ホスティングコントロールパネル"
+
+#: baseTemplate/templates/baseTemplate/index.html:286
+msgid "Close sidebar"
+msgstr "サイドバーを閉じる"
+
+#: baseTemplate/templates/baseTemplate/index.html:292
+msgid "My Account"
+msgstr "マイ アカウント"
+
+#: baseTemplate/templates/baseTemplate/index.html:309
+msgid "Edit profile"
+msgstr "プロフィールの編集"
+
+#: baseTemplate/templates/baseTemplate/index.html:310
+#: baseTemplate/templates/baseTemplate/index.html:433
+#: userManagment/templates/userManagment/index.html:26
+#: userManagment/templates/userManagment/index.html:28
+msgid "View Profile"
+msgstr "プロフィールの表示"
+
+#: baseTemplate/templates/baseTemplate/index.html:317
+#: baseTemplate/templates/baseTemplate/index.html:398
+msgid "Logout"
+msgstr "ログアウト"
+
+#: baseTemplate/templates/baseTemplate/index.html:328
+#: baseTemplate/templates/baseTemplate/index.html:332
+#: baseTemplate/templates/baseTemplate/index.html:336
+msgid "CPU Load Average"
+msgstr "CPU 負荷平均"
+
+#: baseTemplate/templates/baseTemplate/index.html:340
+msgid "Fullscreen"
+msgstr "フルスクリーン"
+
+#: baseTemplate/templates/baseTemplate/index.html:345
+msgid "System Status"
+msgstr "システムの状態"
+
+#: baseTemplate/templates/baseTemplate/index.html:350
+msgid "Dashboard Quick Menu"
+msgstr "ダッシュボードクイックメニュー"
+
+#: baseTemplate/templates/baseTemplate/index.html:384
+#: baseTemplate/templates/baseTemplate/index.html:591
+#: baseTemplate/templates/baseTemplate/index.html:593
+msgid "Tuning"
+msgstr "チューニング"
+
+#: baseTemplate/templates/baseTemplate/index.html:411
+msgid "Overview"
+msgstr "概要"
+
+#: baseTemplate/templates/baseTemplate/index.html:413
+#: baseTemplate/templates/baseTemplate/index.html:415
+#: baseTemplate/templates/baseTemplate/index.html:417
+msgid "Dashboard"
+msgstr "ダッシュボード"
+
+#: baseTemplate/templates/baseTemplate/index.html:418
+#: baseTemplate/templates/baseTemplate/index.html:419
+#: baseTemplate/templates/baseTemplate/versionManagment.html:10
+msgid "Version Management"
+msgstr "バージョン管理"
+
+#: baseTemplate/templates/baseTemplate/index.html:423
+msgid "Main"
+msgstr "メイン"
+
+#: baseTemplate/templates/baseTemplate/index.html:434
+#: userManagment/templates/userManagment/createUser.html:12
+msgid "Create New User"
+msgstr "新しいユーザーの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:435
+#: userManagment/templates/userManagment/index.html:52
+#: userManagment/templates/userManagment/index.html:54
+#: userManagment/templates/userManagment/modifyUser.html:12
+#: userManagment/templates/userManagment/modifyUser.html:119
+msgid "Modify User"
+msgstr "ユーザーの変更"
+
+#: baseTemplate/templates/baseTemplate/index.html:436
+#: userManagment/templates/userManagment/deleteUser.html:13
+#: userManagment/templates/userManagment/deleteUser.html:20
+#: userManagment/templates/userManagment/deleteUser.html:42
+#: userManagment/templates/userManagment/index.html:74
+#: userManagment/templates/userManagment/index.html:76
+msgid "Delete User"
+msgstr "ユーザーの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:451
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:12
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:102
+#: websiteFunctions/templates/websiteFunctions/index.html:26
+#: websiteFunctions/templates/websiteFunctions/index.html:28
+msgid "Create Website"
+msgstr "Web サイトの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:452
+#: websiteFunctions/templates/websiteFunctions/index.html:38
+#: websiteFunctions/templates/websiteFunctions/index.html:40
+#: websiteFunctions/templates/websiteFunctions/listWebsites.html:14
+msgid "List Websites"
+msgstr "Webサイトの一覧"
+
+#: baseTemplate/templates/baseTemplate/index.html:453
+#: websiteFunctions/templates/websiteFunctions/index.html:50
+#: websiteFunctions/templates/websiteFunctions/index.html:52
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:12
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:19
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:95
+msgid "Modify Website"
+msgstr "Web サイトの変更"
+
+#: baseTemplate/templates/baseTemplate/index.html:454
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:41
+msgid "Suspend/Unsuspend"
+msgstr "休止/休止解除"
+
+#: baseTemplate/templates/baseTemplate/index.html:455
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:12
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:19
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:42
+#: websiteFunctions/templates/websiteFunctions/index.html:84
+#: websiteFunctions/templates/websiteFunctions/index.html:86
+msgid "Delete Website"
+msgstr "Web サイトの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:468
+#: packages/templates/packages/createPackage.html:13
+#: packages/templates/packages/createPackage.html:84
+#: packages/templates/packages/index.html:25
+#: packages/templates/packages/index.html:27
+msgid "Create Package"
+msgstr "パッケージの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:469
+#: packages/templates/packages/deletePackage.html:12
+#: packages/templates/packages/deletePackage.html:18
+#: packages/templates/packages/deletePackage.html:40
+#: packages/templates/packages/index.html:37
+#: packages/templates/packages/index.html:39
+msgid "Delete Package"
+msgstr "パッケージの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:470
+#: packages/templates/packages/index.html:49
+#: packages/templates/packages/index.html:51
+#: packages/templates/packages/modifyPackage.html:9
+#: packages/templates/packages/modifyPackage.html:15
+#: packages/templates/packages/modifyPackage.html:95
+msgid "Modify Package"
+msgstr "パッケージの変更"
+
+#: baseTemplate/templates/baseTemplate/index.html:484
+#: databases/templates/databases/createDatabase.html:12
+#: databases/templates/databases/createDatabase.html:19
+#: databases/templates/databases/createDatabase.html:68
+#: databases/templates/databases/index.html:25
+#: databases/templates/databases/index.html:27
+#: manageSSL/templates/manageSSL/index.html:26
+msgid "Create Database"
+msgstr "データベースの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:485
+#: databases/templates/databases/deleteDatabase.html:12
+#: databases/templates/databases/deleteDatabase.html:19
+#: databases/templates/databases/deleteDatabase.html:53
+#: databases/templates/databases/index.html:37
+#: databases/templates/databases/index.html:39
+#: manageSSL/templates/manageSSL/index.html:38
+msgid "Delete Database"
+msgstr "データベースの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:486
+#: databases/templates/databases/index.html:53
+#: databases/templates/databases/index.html:55
+#: databases/templates/databases/listDataBases.html:13
+#: databases/templates/databases/listDataBases.html:19
+msgid "List Databases"
+msgstr "データベースの一覧"
+
+#: baseTemplate/templates/baseTemplate/index.html:487
+#: databases/templates/databases/index.html:65
+#: databases/templates/databases/index.html:67
+msgid "PHPMYAdmin"
+msgstr "PHPMYAdmin"
+
+#: baseTemplate/templates/baseTemplate/index.html:502
+#: dns/templates/dns/createNameServer.html:12
+#: dns/templates/dns/createNameServer.html:76 dns/templates/dns/index.html:72
+#: dns/templates/dns/index.html:74
+msgid "Create Nameserver"
+msgstr "ネームサーバーの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:503
+#: dns/templates/dns/createDNSZone.html:12
+#: dns/templates/dns/createDNSZone.html:40 dns/templates/dns/index.html:29
+#: dns/templates/dns/index.html:31 dns/templates/dns/index.html:84
+#: dns/templates/dns/index.html:86
+msgid "Create DNS Zone"
+msgstr "DNSゾーンの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:504
+#: dns/templates/dns/deleteDNSZone.html:40 dns/templates/dns/index.html:41
+#: dns/templates/dns/index.html:43 dns/templates/dns/index.html:96
+#: dns/templates/dns/index.html:98
+msgid "Delete Zone"
+msgstr "ゾーンの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:505
+msgid "Add/Delete Records"
+msgstr "レコードの追加/削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:521
+#: mailServer/templates/mailServer/createEmailAccount.html:12
+#: mailServer/templates/mailServer/createEmailAccount.html:19
+msgid "Create Email Account"
+msgstr "メールアカウントの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:521
+#: mailServer/templates/mailServer/createEmailAccount.html:64
+#: mailServer/templates/mailServer/index.html:25
+#: mailServer/templates/mailServer/index.html:27
+msgid "Create Email"
+msgstr "メールの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:522
+#: mailServer/templates/mailServer/deleteEmailAccount.html:12
+#: mailServer/templates/mailServer/deleteEmailAccount.html:19
+msgid "Delete Email Account"
+msgstr "メールアカウントの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:522
+#: mailServer/templates/mailServer/deleteEmailAccount.html:56
+#: mailServer/templates/mailServer/index.html:37
+#: mailServer/templates/mailServer/index.html:39
+msgid "Delete Email"
+msgstr "メールの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:523
+#: databases/templates/databases/listDataBases.html:73
+#: ftp/templates/ftp/listFTPAccounts.html:73
+#: mailServer/templates/mailServer/changeEmailPassword.html:64
+#: mailServer/templates/mailServer/index.html:49
+#: mailServer/templates/mailServer/index.html:51
+msgid "Change Password"
+msgstr "パスワードの変更"
+
+#: baseTemplate/templates/baseTemplate/index.html:524
+msgid "Access Webmail"
+msgstr "Webメール アクセス"
+
+#: baseTemplate/templates/baseTemplate/index.html:543
+#: ftp/templates/ftp/createFTPAccount.html:12
+#: ftp/templates/ftp/createFTPAccount.html:19 ftp/templates/ftp/index.html:25
+#: ftp/templates/ftp/index.html:27
+#: websiteFunctions/templates/websiteFunctions/website.html:710
+#: websiteFunctions/templates/websiteFunctions/website.html:712
+msgid "Create FTP Account"
+msgstr "FTP アカウントの作成"
+
+#: baseTemplate/templates/baseTemplate/index.html:544
+#: ftp/templates/ftp/deleteFTPAccount.html:12
+#: ftp/templates/ftp/deleteFTPAccount.html:18
+#: ftp/templates/ftp/deleteFTPAccount.html:52 ftp/templates/ftp/index.html:37
+#: ftp/templates/ftp/index.html:39
+#: websiteFunctions/templates/websiteFunctions/website.html:722
+#: websiteFunctions/templates/websiteFunctions/website.html:724
+msgid "Delete FTP Account"
+msgstr "FTP アカウントの削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:545
+#: ftp/templates/ftp/index.html:49 ftp/templates/ftp/index.html:51
+#: ftp/templates/ftp/listFTPAccounts.html:13
+#: ftp/templates/ftp/listFTPAccounts.html:19
+msgid "List FTP Accounts"
+msgstr "FTP アカウントの一覧"
+
+#: baseTemplate/templates/baseTemplate/index.html:563
+msgid "Add/Delete Destination"
+msgstr "バックアップ先の追加/削除"
+
+#: baseTemplate/templates/baseTemplate/index.html:565
+#, fuzzy
+#| msgid "Remote Backups"
+msgid "Remote Back ups"
+msgstr "リモートバックアップ"
+
+#: baseTemplate/templates/baseTemplate/index.html:574
+#: baseTemplate/templates/baseTemplate/index.html:575
+msgid "SSL"
+msgstr "SSL"
+
+#: baseTemplate/templates/baseTemplate/index.html:580
+#: manageSSL/templates/manageSSL/index.html:28
+#: manageSSL/templates/manageSSL/manageSSL.html:13
+#: manageSSL/templates/manageSSL/manageSSL.html:20
+msgid "Manage SSL"
+msgstr "SSL の管理"
+
+#: baseTemplate/templates/baseTemplate/index.html:581
+#: manageSSL/templates/manageSSL/index.html:40
+msgid "Hostname SSL"
+msgstr "ホスト名 SSL"
+
+#: baseTemplate/templates/baseTemplate/index.html:589
+msgid "Server"
+msgstr "サーバー"
+
+#: baseTemplate/templates/baseTemplate/index.html:594
+msgid "NEW"
+msgstr "新規"
+
+#: baseTemplate/templates/baseTemplate/index.html:599
+#: tuning/templates/tuning/index.html:24 tuning/templates/tuning/index.html:26
+#: tuning/templates/tuning/liteSpeedTuning.html:12
+msgid "LiteSpeed Tuning"
+msgstr "LiteSpeed チューニング"
+
+#: baseTemplate/templates/baseTemplate/index.html:600
+#: tuning/templates/tuning/index.html:36 tuning/templates/tuning/index.html:38
+#: tuning/templates/tuning/phpTuning.html:13
+msgid "PHP Tuning"
+msgstr "PHP チューニング"
+
+#: baseTemplate/templates/baseTemplate/index.html:615
+#: serverStatus/templates/serverStatus/index.html:25
+#: serverStatus/templates/serverStatus/index.html:27
+msgid "LiteSpeed Status"
+msgstr "LiteSpeed の状態"
+
+#: baseTemplate/templates/baseTemplate/index.html:616
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:15
+#: serverStatus/templates/serverStatus/index.html:37
+#: serverStatus/templates/serverStatus/index.html:39
+msgid "CyberPanel Main Log File"
+msgstr "CyberPanel メインログファイル"
+
+#: baseTemplate/templates/baseTemplate/index.html:633
+#: managePHP/templates/managePHP/installExtensions.html:13
+msgid "Install PHP Extensions"
+msgstr "PHP拡張機能のインストール"
+
+#: baseTemplate/templates/baseTemplate/index.html:633
+#: managePHP/templates/managePHP/index.html:24
+#: managePHP/templates/managePHP/index.html:26
+msgid "Install Extensions"
+msgstr "拡張機能のインストール"
+
+#: baseTemplate/templates/baseTemplate/index.html:634
+#: managePHP/templates/managePHP/index.html:36
+#: managePHP/templates/managePHP/index.html:38
+msgid "Edit PHP Configs"
+msgstr "PHP 設定の編集"
+
+#: baseTemplate/templates/baseTemplate/index.html:649
+msgid "Access Log"
+msgstr "アクセスログ"
+
+#: baseTemplate/templates/baseTemplate/index.html:650
+#: serverLogs/templates/serverLogs/errorLogs.html:14
+#: serverLogs/templates/serverLogs/index.html:37
+#: serverLogs/templates/serverLogs/index.html:39
+#: websiteFunctions/templates/websiteFunctions/website.html:133
+msgid "Error Logs"
+msgstr "エラーログ"
+
+#: baseTemplate/templates/baseTemplate/index.html:651
+#: serverLogs/templates/serverLogs/emailLogs.html:14
+#: serverLogs/templates/serverLogs/index.html:49
+#: serverLogs/templates/serverLogs/index.html:51
+msgid "Email Logs"
+msgstr "メールログ"
+
+#: baseTemplate/templates/baseTemplate/index.html:651
+msgid "Email Log"
+msgstr "メールログ"
+
+#: baseTemplate/templates/baseTemplate/index.html:652
+#: serverLogs/templates/serverLogs/ftplogs.html:14
+#: serverLogs/templates/serverLogs/index.html:61
+#: serverLogs/templates/serverLogs/index.html:63
+msgid "FTP Logs"
+msgstr "FTP ログ"
+
+#: baseTemplate/templates/baseTemplate/index.html:667
+msgid "Firewall Home"
+msgstr "ファイアウォールホーム"
+
+#: baseTemplate/templates/baseTemplate/index.html:667
+#: firewall/templates/firewall/index.html:25
+#: firewall/templates/firewall/index.html:27
+msgid "Firewall"
+msgstr "ファイアウォール"
+
+#: baseTemplate/templates/baseTemplate/index.html:668
+#: firewall/templates/firewall/index.html:36
+#: firewall/templates/firewall/index.html:38
+#: firewall/templates/firewall/secureSSH.html:13
+#: firewall/templates/firewall/secureSSH.html:20
+msgid "Secure SSH"
+msgstr "SSH のセキュリティ"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:3
+msgid "Version Management - CyberPanel"
+msgstr "バージョン管理 - CyberPanel"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:11
+msgid ""
+"On this page you can manage versions and or upgrade to latest version of "
+"CyberPanel"
+msgstr ""
+"このページでは、バージョン管理や CyberPanel の最新バージョンへのアップグレー"
+"ドが可能です"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:25
+msgid "Current Version"
+msgstr "現在のバージョン"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:33
+msgid "Build"
+msgstr "ビルド"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:42
+msgid "Latest Version"
+msgstr "最新バージョン"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:50
+msgid "Latest Build"
+msgstr "最新のビルド"
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:66
+#: firewall/templates/firewall/secureSSH.html:78
+#: managePHP/templates/managePHP/editPHPConfig.html:140
+msgid "Error message: "
+msgstr "エラーメッセージ: "
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:70
+msgid "Update started..."
+msgstr "更新を開始..."
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:74
+msgid "Update finished..."
+msgstr "更新を終了..."
+
+#: baseTemplate/templates/baseTemplate/versionManagment.html:79
+#: firewall/templates/firewall/secureSSH.html:87
+#: firewall/templates/firewall/secureSSH.html:172
+#: managePHP/templates/managePHP/editPHPConfig.html:149
+#: managePHP/templates/managePHP/editPHPConfig.html:221
+#: managePHP/templates/managePHP/installExtensions.html:113
+msgid "Could not connect. Please refresh this page."
+msgstr "接続できませんでした。このページを更新してください。"
+
+#: databases/templates/databases/createDatabase.html:3
+msgid "Create New Database - CyberPanel"
+msgstr "新しいデータベースの作成 - CyberPanel"
+
+#: databases/templates/databases/createDatabase.html:13
+msgid "Create a new database on this page."
+msgstr "このページで新しいデータベースを作成します。"
+
+#: databases/templates/databases/createDatabase.html:42
+#: databases/templates/databases/listDataBases.html:88
+msgid "Database Name"
+msgstr "データベース名"
+
+#: databases/templates/databases/createDatabase.html:50
+#: firewall/templates/firewall/secureSSH.html:120
+#: ftp/templates/ftp/createFTPAccount.html:43
+#: ftp/templates/ftp/listFTPAccounts.html:88
+#: mailServer/templates/mailServer/createEmailAccount.html:43
+msgid "User Name"
+msgstr "ユーザー名"
+
+#: databases/templates/databases/createDatabase.html:79
+msgid "Cannot create database. Error message:"
+msgstr "データベースを作成できません。エラーメッセージ:"
+
+#: databases/templates/databases/createDatabase.html:83
+msgid "Database created successfully."
+msgstr "データベースが作成されました。"
+
+#: databases/templates/databases/deleteDatabase.html:3
+msgid "Delete Database - CyberPanel"
+msgstr "データベースの削除 - CyberPanel"
+
+#: databases/templates/databases/deleteDatabase.html:13
+msgid "Delete an existing database on this page."
+msgstr "このページで既存のデータベースを削除します。"
+
+#: databases/templates/databases/deleteDatabase.html:40
+msgid "Select Database"
+msgstr "データベースの選択"
+
+#: databases/templates/databases/deleteDatabase.html:68
+msgid "Database deleted successfully."
+msgstr "データベースが削除されました。"
+
+#: databases/templates/databases/index.html:3
+msgid "Database Functions - CyberPanel"
+msgstr "データベース機能 - CyberPanel"
+
+#: databases/templates/databases/index.html:13
+msgid "Create, edit and delete databases on this page."
+msgstr "このページでデータベースの作成、編集、削除を行います。"
+
+#: databases/templates/databases/listDataBases.html:3
+msgid "List Databases - CyberPanel"
+msgstr "データベースの一覧 - CyberPanel"
+
+#: databases/templates/databases/listDataBases.html:14
+msgid "List Databases or change their passwords."
+msgstr "データベースを一覧表示するか、パスワードを変更します。"
+
+#: databases/templates/databases/listDataBases.html:28
+#: dns/templates/dns/addDeleteDNSRecords.html:28
+#: ftp/templates/ftp/deleteFTPAccount.html:27
+#: ftp/templates/ftp/listFTPAccounts.html:28
+msgid "Select Domain"
+msgstr "ドメインタイプの選択"
+
+#: databases/templates/databases/listDataBases.html:46
+#: dns/templates/dns/addDeleteDNSRecords.html:168
+#: ftp/templates/ftp/listFTPAccounts.html:46
+msgid "Records successfully fetched for"
+msgstr "レコードが取得されました"
+
+#: databases/templates/databases/listDataBases.html:50
+msgid "Password changed for: "
+msgstr "パスワードを変更: "
+
+#: databases/templates/databases/listDataBases.html:54
+msgid "Cannot change password for "
+msgstr "パスワードを変更できません "
+
+#: databases/templates/databases/listDataBases.html:59
+#: firewall/templates/firewall/firewall.html:176
+#: ftp/templates/ftp/listFTPAccounts.html:59
+msgid "Could Not Connect to server. Please refresh this page"
+msgstr "サーバーに接続できませんでした。 このページを更新してください"
+
+#: databases/templates/databases/listDataBases.html:89
+msgid "Database User"
+msgstr "データベースのユーザー"
+
+#: databases/templates/databases/listDataBases.html:98
+#: ftp/templates/ftp/listFTPAccounts.html:100
+msgid "Change"
+msgstr "変更"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:3
+msgid "Add/Modify DNS Records - CyberPanel"
+msgstr "追加/変更 DNS レコード - CyberPanel"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:13
+msgid "Add/Modify DNS Zone"
+msgstr "DNS ゾーンの追加/変更"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:14
+msgid ""
+"On this page you can add/modify dns records for domains whose dns zone is "
+"already created."
+msgstr ""
+"このページでは、DNS ゾーンがすでに作成されているドメインの DNS レコードを追"
+"加/変更できます。"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:19
+msgid "Add Records"
+msgstr "レコードを追加"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:53
+#: dns/templates/dns/addDeleteDNSRecords.html:131
+#: firewall/templates/firewall/firewall.html:136
+#: serverStatus/templates/serverStatus/litespeedStatus.html:40
+msgid "Name"
+msgstr "名称"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:69
+msgid "IPV6"
+msgstr "IPv6"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:78
+#: dns/templates/dns/addDeleteDNSRecords.html:133
+msgid "Priority"
+msgstr "優先度"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:87
+#: dns/templates/dns/createDNSZone.html:27
+#: dns/templates/dns/createNameServer.html:27
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:52
+#: websiteFunctions/templates/websiteFunctions/website.html:290
+msgid "Domain Name"
+msgstr "ドメイン名"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:95
+msgid "Policy"
+msgstr "ポリシ"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:103
+msgid "Text"
+msgstr "テキスト"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:111
+#: firewall/templates/firewall/firewall.html:117
+msgid "Add"
+msgstr "追加"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:130
+msgid "Type"
+msgstr "種別"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:132
+msgid "Value"
+msgstr "値"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:160
+msgid "Cannot fetch records. Error message:"
+msgstr "レコードを取得できません。エラー メッセージ:"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:164
+msgid "Cannot add record. Error message: "
+msgstr "レコードを追加できません。エラーメッセージ: "
+
+#: dns/templates/dns/addDeleteDNSRecords.html:172
+msgid "Record Successfully Deleted"
+msgstr "レコードが削除されました"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:176
+msgid "Cannot delete record. Error message:"
+msgstr "レコードを削除できません。エラーメッセージ:"
+
+#: dns/templates/dns/addDeleteDNSRecords.html:180
+msgid "Record Successfully Added."
+msgstr "レコードが追加されました。"
+
+#: dns/templates/dns/createDNSZone.html:3
+msgid "Create DNS Zone - CyberPanel"
+msgstr "DNSゾーンの作成 - CyberPanel"
+
+#: dns/templates/dns/createDNSZone.html:13
+msgid ""
+"This page is used to create DNS zone, to edit dns zone you can visit Modify "
+"DNS Zone Page."
+msgstr ""
+"このページは、DNS ゾーンを作成に使用します。DNS ゾーンを編集するには DNS ゾー"
+"ン変更ページを参照してください。"
+
+#: dns/templates/dns/createDNSZone.html:18
+#: dns/templates/dns/createNameServer.html:18
+#: userManagment/templates/userManagment/modifyUser.html:19
+msgid "Details"
+msgstr "詳細"
+
+#: dns/templates/dns/createDNSZone.html:51
+msgid "Cannot create DNS Zone. Error message:"
+msgstr "DNS ゾーンを作成できません。エラーメッセージ:"
+
+#: dns/templates/dns/createDNSZone.html:55
+msgid "DNS Zone for domain:"
+msgstr "ドメインの DNS ゾーン:"
+
+#: dns/templates/dns/createNameServer.html:3
+msgid "Create Nameserver - CyberPanel"
+msgstr "ネームサーバーの作成 - CyberPanel"
+
+#: dns/templates/dns/createNameServer.html:13
+msgid ""
+"You can use this page to setup nameservers using which people on the "
+"internet can resolve websites hosted on this server."
+msgstr ""
+"このページを使用して、インターネット上の人々がこのサーバーでホストされている"
+"Webサイトを解決できるネームサーバーを設定できます。"
+
+#: dns/templates/dns/createNameServer.html:39
+msgid "First Nameserver"
+msgstr "ファーストネームサーバー"
+
+#: dns/templates/dns/createNameServer.html:55
+msgid "Second Nameserver (Back up)"
+msgstr "セカンドネームサーバー(バックアップ)"
+
+#: dns/templates/dns/createNameServer.html:87
+msgid "Nameserver cannot be created. Error message:"
+msgstr "ネームサーバーを作成できません。エラー メッセージ:"
+
+#: dns/templates/dns/createNameServer.html:91
+msgid "The following nameservers were successfully created:"
+msgstr "次のネームサーバーが作成されました:"
+
+#: dns/templates/dns/deleteDNSZone.html:3
+msgid "Delete DNS Zone - CyberPanel"
+msgstr "DNSゾーンの削除 - CyberPanel"
+
+#: dns/templates/dns/deleteDNSZone.html:12
+#: dns/templates/dns/deleteDNSZone.html:18
+msgid "Delete DNS Zone"
+msgstr "DNSゾーンの削除"
+
+#: dns/templates/dns/deleteDNSZone.html:13
+msgid ""
+"This page can be used to delete DNS Zone. Deleting the DNS zone will remove "
+"all its related records as well."
+msgstr ""
+"このページを使用して DNS ゾーンを削除できます。DNS ゾーンを削除すると、関連す"
+"るすべてのレコードも削除されます。"
+
+#: dns/templates/dns/deleteDNSZone.html:27
+msgid "Select Zone"
+msgstr "ゾーンを選択"
+
+#: dns/templates/dns/deleteDNSZone.html:49
+#: ftp/templates/ftp/deleteFTPAccount.html:61
+#: mailServer/templates/mailServer/deleteEmailAccount.html:64
+#: packages/templates/packages/deletePackage.html:49
+#: userManagment/templates/userManagment/deleteUser.html:51
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:51
+msgid "Are you sure?"
+msgstr "よろしいですか?"
+
+#: dns/templates/dns/deleteDNSZone.html:59
+msgid "Cannot delete zone. Error message: "
+msgstr "ゾーンを削除できません。エラーメッセージ: "
+
+#: dns/templates/dns/deleteDNSZone.html:63
+msgid "Zone for domain:"
+msgstr "ドメインの DNS ゾーン:"
+
+#: dns/templates/dns/deleteDNSZone.html:63
+msgid "is successfully erased."
+msgstr "消去されました。"
+
+#: dns/templates/dns/index.html:3
+msgid "DNS Functions - CyberPanel"
+msgstr "DNS 機能 - CyberPanel"
+
+#: dns/templates/dns/index.html:12
+msgid "DNS Functions"
+msgstr "DNS 機能"
+
+#: dns/templates/dns/index.html:13
+msgid "Create, edit and delete DNS zones on this page."
+msgstr "このページでDNSゾーンを作成、編集、削除を行います。"
+
+#: dns/templates/dns/index.html:53 dns/templates/dns/index.html:108
+msgid "Add Delete Records"
+msgstr "削除レコードを追加"
+
+#: dns/templates/dns/index.html:55 dns/templates/dns/index.html:110
+msgid "Add Delete/Records"
+msgstr "削除/レコードを追加"
+
+#: firewall/templates/firewall/firewall.html:3
+msgid "Firewall - CyberPanel"
+msgstr "ファイアウォール - CyberPanel"
+
+#: firewall/templates/firewall/firewall.html:13
+msgid "Add/Delete Firewall Rules"
+msgstr "ファイアウォール ルールの追加/削除"
+
+#: firewall/templates/firewall/firewall.html:14
+msgid ""
+"On this page you can add/delete firewall rules. (By default all ports are "
+"blocked, except mentioned below)"
+msgstr ""
+"このページでは、ファイアウォールルールを追加/削除できます。 (デフォルトで"
+"は、以下で述べる以外はすべてのポートがブロックされます)"
+
+#: firewall/templates/firewall/firewall.html:19
+msgid "Add/Delete Rules"
+msgstr "ルールの追加/削除"
+
+#: firewall/templates/firewall/firewall.html:45
+msgid "Start"
+msgstr "起動"
+
+#: firewall/templates/firewall/firewall.html:51
+msgid "Stop"
+msgstr "停止"
+
+#: firewall/templates/firewall/firewall.html:58
+msgid "Reload"
+msgstr "再読み込み"
+
+#: firewall/templates/firewall/firewall.html:63
+msgid "Action failed. Error message:"
+msgstr "操作が失敗しました。エラーメッセージ:"
+
+#: firewall/templates/firewall/firewall.html:67
+#: serverStatus/templates/serverStatus/litespeedStatus.html:85
+msgid "Action successful."
+msgstr "操作は終了しました。"
+
+#: firewall/templates/firewall/firewall.html:137
+msgid "Protocol"
+msgstr "プロトコル"
+
+#: firewall/templates/firewall/firewall.html:139
+msgid "Port"
+msgstr "ポート"
+
+#: firewall/templates/firewall/firewall.html:172
+msgid "Rule successfully added."
+msgstr "ルールが追加されました。"
+
+#: firewall/templates/firewall/index.html:3
+msgid "Security - CyberPanel"
+msgstr "セキュリティ - CyberPanel"
+
+#: firewall/templates/firewall/index.html:12
+msgid "Security Functions"
+msgstr "セキュリティ機能"
+
+#: firewall/templates/firewall/index.html:13
+msgid "Manage the security of the server on this page."
+msgstr "このページでサーバーセキュリティを管理します。"
+
+#: firewall/templates/firewall/secureSSH.html:3
+msgid "Secure SSH - CyberPanel"
+msgstr "SSH のセキュリティ - CyberPanel"
+
+#: firewall/templates/firewall/secureSSH.html:14
+msgid "Secure or harden SSH Configurations."
+msgstr "SSHの設定をより安全にするか強化します。"
+
+#: firewall/templates/firewall/secureSSH.html:28
+#: managePHP/templates/managePHP/editPHPConfig.html:29
+msgid "Basic"
+msgstr "基本"
+
+#: firewall/templates/firewall/secureSSH.html:34
+msgid "SSH Keys"
+msgstr "SSH キー"
+
+#: firewall/templates/firewall/secureSSH.html:47
+msgid "SSH Port"
+msgstr "SSH ポート"
+
+#: firewall/templates/firewall/secureSSH.html:56
+msgid "Permit Root Login"
+msgstr "Root ログインを許可する"
+
+#: firewall/templates/firewall/secureSSH.html:60
+msgid ""
+"Before disabling root login, make sure you have another account with sudo "
+"priviliges on server."
+msgstr ""
+"root ログインを無効にする前に、サーバーに sudo 権限を持つ別のアカウントがある"
+"ことを確認してください。"
+
+#: firewall/templates/firewall/secureSSH.html:68
+#: managePHP/templates/managePHP/editPHPConfig.html:130
+#: managePHP/templates/managePHP/editPHPConfig.html:203
+msgid "Save Changes"
+msgstr "変更を保存"
+
+#: firewall/templates/firewall/secureSSH.html:82
+msgid "SSH Configurations Saved."
+msgstr "SSH の設定が保存されました。"
+
+#: firewall/templates/firewall/secureSSH.html:121
+msgid "Key"
+msgstr "キー"
+
+#: firewall/templates/firewall/secureSSH.html:150
+msgid "Add Key"
+msgstr "キーを追加"
+
+#: firewall/templates/firewall/secureSSH.html:158
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:55
+#: websiteFunctions/templates/websiteFunctions/website.html:554
+#: websiteFunctions/templates/websiteFunctions/website.html:614
+msgid "Save"
+msgstr "保存"
+
+#: firewall/templates/firewall/secureSSH.html:167
+msgid "SSH Key Deleted"
+msgstr "SSH キーが削除されました"
+
+#: ftp/templates/ftp/createFTPAccount.html:3
+msgid "Create FTP Account - CyberPanel"
+msgstr "FTP アカウントの作成 - CyberPanel"
+
+#: ftp/templates/ftp/createFTPAccount.html:13
+msgid ""
+"Select the website from list, and its home directory will be set as the path "
+"to ftp account."
+msgstr ""
+"一覧から Web サイトを選択すると、そのホームディレクトリがftpアカウントへのパ"
+"スとして設定されます。"
+
+#: ftp/templates/ftp/createFTPAccount.html:52
+msgid "FTP Password"
+msgstr "FTP のパスワード"
+
+#: ftp/templates/ftp/createFTPAccount.html:59
+msgid "Path (Relative)"
+msgstr "パス (相対値)"
+
+#: ftp/templates/ftp/createFTPAccount.html:61
+msgid "Leave empty to select default home directory."
+msgstr "デフォルトのホームディレクトリを選択するには、空のままにします。"
+
+#: ftp/templates/ftp/createFTPAccount.html:72
+msgid "Create FTP"
+msgstr "FTPアカウント の作成"
+
+#: ftp/templates/ftp/createFTPAccount.html:80
+msgid "Cannot create FTP account. Error message:"
+msgstr "FTP アカウントを作成できません。エラーメッセージ:"
+
+#: ftp/templates/ftp/createFTPAccount.html:84
+#: ftp/templates/ftp/createFTPAccount.html:87
+#: ftp/templates/ftp/deleteFTPAccount.html:75
+msgid "FTP Account with username:"
+msgstr "ユーザー名を持つ FTP アカウント:"
+
+#: ftp/templates/ftp/createFTPAccount.html:84
+#: ftp/templates/ftp/createFTPAccount.html:87
+#: userManagment/templates/userManagment/createUser.html:154
+msgid "is successfully created."
+msgstr "作成されました。"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:3
+msgid "Delete FTP Account - CyberPanel"
+msgstr "FTP アカウントの削除 - CyberPanel"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:13
+msgid "Select domain and delete its related FTP accounts."
+msgstr "ドメインを選択し、関連の FTP アカウントを削除します。"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:40
+msgid "Select FTP Account"
+msgstr "FTP アカウントを選択"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:71
+msgid "Cannot delete account. Error message:"
+msgstr "アカウントを削除できません。エラーメッセージ:"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:75
+msgid " is successfully deleted."
+msgstr " 削除されました。"
+
+#: ftp/templates/ftp/deleteFTPAccount.html:79
+#: userManagment/templates/userManagment/deleteUser.html:70
+msgid "Could not connect to the server. Please refresh this page."
+msgstr "サーバーに接続できませんでした。 このページを更新してください。"
+
+#: ftp/templates/ftp/index.html:3
+msgid "FTP Functions - CyberPanel"
+msgstr "FTP 機能 - CyberPanel"
+
+#: ftp/templates/ftp/index.html:13
+msgid "Delete and create FTP accounts on this page."
+msgstr "このページで FTP アカウントを削除して作成します。"
+
+#: ftp/templates/ftp/listFTPAccounts.html:3
+msgid "List FTP Accounts - CyberPanel"
+msgstr "FTP アカウントの一覧 - CyberPanel"
+
+#: ftp/templates/ftp/listFTPAccounts.html:14
+msgid "List FTP Accounts or change their passwords."
+msgstr "FTP アカウントを一覧表示するか、パスワードを変更します。"
+
+#: ftp/templates/ftp/listFTPAccounts.html:50
+msgid "Password changed for"
+msgstr "パスワードが変更されました"
+
+#: ftp/templates/ftp/listFTPAccounts.html:54
+msgid ""
+"Cannot change password for {$ ftpUsername $}. Error message:"
+msgstr ""
+"{$ ftpUsername $}のパスワードを変更できません。エラーメッ"
+"セージ:"
+
+#: ftp/templates/ftp/listFTPAccounts.html:89
+msgid "Directory"
+msgstr "ディレクトリ"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:3
+msgid "Change Email Password - CyberPanel"
+msgstr "メール パスワードの変更 - CyberPanel"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:12
+#: mailServer/templates/mailServer/changeEmailPassword.html:19
+msgid "Change Email Password"
+msgstr "メール パスワードの変更"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:13
+msgid "Select a website from the list, to change its password."
+msgstr "リストボックスから Web サイトを選択し、パスワードを変更します。"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:42
+#: mailServer/templates/mailServer/deleteEmailAccount.html:42
+msgid "Select Email"
+msgstr "メールを選択"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:73
+#: mailServer/templates/mailServer/deleteEmailAccount.html:72
+msgid "Cannot delete email account. Error message:"
+msgstr "電子メールアカウントを削除できません。エラーメッセージ:"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:77
+msgid "Password successfully changed for :"
+msgstr "パスワードが変更されました:"
+
+#: mailServer/templates/mailServer/changeEmailPassword.html:84
+#: mailServer/templates/mailServer/deleteEmailAccount.html:83
+msgid "Currently no email accounts exist for this domain."
+msgstr "現在、このドメインにはメールアカウントはありません。"
+
+#: mailServer/templates/mailServer/createEmailAccount.html:3
+msgid "Create Email Account - CyberPanel"
+msgstr "メールアカウントの作成 - CyberPanel"
+
+#: mailServer/templates/mailServer/createEmailAccount.html:13
+msgid "Select a website from the list, to create an email account."
+msgstr ""
+"メールアカウントを作成するには、リストボックスから Web サイトを選択します。"
+
+#: mailServer/templates/mailServer/createEmailAccount.html:72
+msgid "Cannot create email account. Error message:"
+msgstr "メールアカウントを作成できません。エラーメッセージ:"
+
+#: mailServer/templates/mailServer/createEmailAccount.html:76
+msgid "Email with id :"
+msgstr "ID 付きメール:"
+
+#: mailServer/templates/mailServer/createEmailAccount.html:76
+msgid " is successfully created."
+msgstr " 作成されました。"
+
+#: mailServer/templates/mailServer/deleteEmailAccount.html:3
+msgid "Delete Email Account - CyberPanel"
+msgstr "メールアカウントの削除 - CyberPanel"
+
+#: mailServer/templates/mailServer/deleteEmailAccount.html:13
+msgid "Select a website from the list, to delete an email account."
+msgstr ""
+"メールアカウントを削除するには、リストボックスから Web サイトを選択します。"
+
+#: mailServer/templates/mailServer/deleteEmailAccount.html:76
+msgid "Email with id : {$ deletedID $} is successfully deleted."
+msgstr "ID 付きメール: {$ deletedID $}は削除されました。"
+
+#: mailServer/templates/mailServer/index.html:3
+msgid "Mail Functions - CyberPanel"
+msgstr "メール機能 - CyberPanel"
+
+#: mailServer/templates/mailServer/index.html:12
+msgid "Mail Functions"
+msgstr "メール機能"
+
+#: mailServer/templates/mailServer/index.html:13
+msgid "Manage email accounts on this page."
+msgstr "このページでメールアカウントを管理します。"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:3
+msgid "Edit PHP Configurations - CyberPanel"
+msgstr "PHP 設定の編集 - CyberPanel"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:14
+#: managePHP/templates/managePHP/editPHPConfig.html:21
+msgid "Edit PHP Configurations"
+msgstr "PHP 設定の編集"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:15
+msgid "Edit PHP Configurations on this page."
+msgstr "このページで PHP 設定を編集してください。"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:35
+msgid "Advanced"
+msgstr "高度"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:48
+#: managePHP/templates/managePHP/editPHPConfig.html:174
+#: managePHP/templates/managePHP/installExtensions.html:28
+#: tuning/templates/tuning/phpTuning.html:28
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:68
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:74
+#: websiteFunctions/templates/websiteFunctions/website.html:310
+msgid "Select PHP"
+msgstr "PHP の選択"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:66
+msgid "display_errors"
+msgstr "display_errors"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:73
+msgid "file_uploads"
+msgstr "file_uploads"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:81
+msgid "allow_url_fopen"
+msgstr "allow_url_fopen"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:89
+msgid "allow_url_include"
+msgstr "allow_url_include"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:97
+msgid "memory_limit"
+msgstr "memory_limit"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:104
+msgid "max_execution_time"
+msgstr "max_execution_time"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:111
+msgid "upload_max_filesize"
+msgstr "upload_max_filesize"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:118
+msgid "max_input_time"
+msgstr "max_input_time"
+
+#: managePHP/templates/managePHP/editPHPConfig.html:144
+#: managePHP/templates/managePHP/editPHPConfig.html:216
+msgid "PHP Configs Saved."
+msgstr "PHP 設定が保存されました。"
+
+#: managePHP/templates/managePHP/index.html:3
+msgid "Manage PHP Installations - CyberPanel"
+msgstr "PHPインストールの管理 - CyberPanel"
+
+#: managePHP/templates/managePHP/index.html:12
+msgid "Manage PHP Installations"
+msgstr "PHP インストール管理"
+
+#: managePHP/templates/managePHP/index.html:13
+msgid "Edit your PHP Configurations to suit your needs."
+msgstr "必要に応じて PHP 設定を編集します。"
+
+#: managePHP/templates/managePHP/installExtensions.html:3
+msgid "Install PHP Extensions - CyberPanel"
+msgstr "PHP 拡張機能のインストール - CyberPanel"
+
+#: managePHP/templates/managePHP/installExtensions.html:14
+msgid "Install/uninstall php extensions on this page."
+msgstr "このページでPHP拡張機能をインストール/アンインストールします。"
+
+#: managePHP/templates/managePHP/installExtensions.html:19
+#: tuning/templates/tuning/phpTuning.html:19
+msgid "Select PHP Version"
+msgstr "PHP バージョンを選択"
+
+#: managePHP/templates/managePHP/installExtensions.html:48
+msgid "Search Extensions.."
+msgstr "拡張機能を検索.."
+
+#: managePHP/templates/managePHP/installExtensions.html:63
+msgid "Extension Name"
+msgstr "拡張機能名"
+
+#: managePHP/templates/managePHP/installExtensions.html:64
+msgid "Description"
+msgstr "説明"
+
+#: managePHP/templates/managePHP/installExtensions.html:66
+#: managePHP/templates/managePHP/installExtensions.html:77
+msgid "Install"
+msgstr "インストール"
+
+#: managePHP/templates/managePHP/installExtensions.html:67
+#: managePHP/templates/managePHP/installExtensions.html:78
+msgid "Uninstall"
+msgstr "アンインストール"
+
+#: managePHP/templates/managePHP/installExtensions.html:93
+msgid "Go Back"
+msgstr "前に戻る"
+
+#: managePHP/templates/managePHP/installExtensions.html:104
+#: tuning/templates/tuning/phpTuning.html:114
+#: userManagment/templates/userManagment/modifyUser.html:143
+msgid "Cannot fetch details. Error message:"
+msgstr "詳細を取得できません。エラーメッセージ:"
+
+#: managePHP/templates/managePHP/installExtensions.html:108
+msgid "Cannot perform operation. Error message:"
+msgstr "操作を実行できません。エラー メッセージ:"
+
+#: manageSSL/templates/manageSSL/index.html:3
+msgid "SSL Functions - CyberPanel"
+msgstr "SSL 機能 - CyberPanel"
+
+#: manageSSL/templates/manageSSL/index.html:13
+msgid "SSL Functions"
+msgstr "SSL 機能"
+
+#: manageSSL/templates/manageSSL/index.html:14
+msgid "Issue Let’s Encrypt SSLs for websites and hostname."
+msgstr "Web サイトとホスト名で Let’s Encrypt SSL を発行します。"
+
+#: manageSSL/templates/manageSSL/manageSSL.html:3
+msgid "Manage SSL - CyberPanel"
+msgstr "SSL の管理 - CyberPanel"
+
+#: manageSSL/templates/manageSSL/manageSSL.html:14
+msgid ""
+"This page can be used to issue Let’s Encrypt SSL for existing websites on "
+"server."
+msgstr ""
+"このページは、サーバー上の既存の Web サイトに対して Let’s Encrypt SSL を発行"
+"するために使用できます。"
+
+#: manageSSL/templates/manageSSL/manageSSL.html:42
+#: manageSSL/templates/manageSSL/sslForHostName.html:42
+msgid "Issue SSL"
+msgstr "SSLを発行する"
+
+#: manageSSL/templates/manageSSL/manageSSL.html:52
+#: manageSSL/templates/manageSSL/sslForHostName.html:52
+msgid "Cannot issue SSL. Error message:"
+msgstr "SSL を発行できません。エラー メッセージ:"
+
+#: manageSSL/templates/manageSSL/manageSSL.html:56
+msgid "SSL Issued for"
+msgstr "SSLが発行されました"
+
+#: manageSSL/templates/manageSSL/sslForHostName.html:3
+msgid "Issue SSL For Hostname - CyberPanel"
+msgstr "ホスト名のSSLを発行 - CyberPanel"
+
+#: manageSSL/templates/manageSSL/sslForHostName.html:13
+#: manageSSL/templates/manageSSL/sslForHostName.html:20
+msgid "Issue SSL For Hostname"
+msgstr "ホスト名にSSLを発行する"
+
+#: manageSSL/templates/manageSSL/sslForHostName.html:14
+msgid "Let’s Encrypt SSL for hostname to access CyberPanel on verified SSL."
+msgstr ""
+"検証済みのSSLでCyberPanelにアクセスするために、ホスト名でLet’s Encrypt SSLを"
+"申請する。"
+
+#: manageSSL/templates/manageSSL/sslForHostName.html:56
+#: manageSSL/templates/manageSSL/sslForHostName.html:60
+msgid "SSL Issued. You can now access CyberPanel at:"
+msgstr "SSL が発行されました。 CyberPanel にアクセスできるようになりました:"
+
+#: packages/templates/packages/createPackage.html:3
+msgid "Create Package - CyberPanel"
+msgstr "パッケージの作成 - CyberPanel"
+
+#: packages/templates/packages/createPackage.html:14
+#: packages/templates/packages/deletePackage.html:13
+#: packages/templates/packages/index.html:14
+#: packages/templates/packages/modifyPackage.html:10
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:13
+msgid ""
+"Packages define resources for your websites, you need to add package before "
+"creating a website."
+msgstr ""
+"パッケージは Web サイトのリソースを定義するため、Web サイトを作成する前にパッ"
+"ケージを追加する必要があります。"
+
+#: packages/templates/packages/createPackage.html:19
+msgid "Package Details"
+msgstr "パッケージの詳細"
+
+#: packages/templates/packages/createPackage.html:26
+msgid "Package Name"
+msgstr "パッケージ名"
+
+#: packages/templates/packages/createPackage.html:35
+#: packages/templates/packages/modifyPackage.html:40
+#: websiteFunctions/templates/websiteFunctions/website.html:250
+msgid "Domains"
+msgstr "ドメイン"
+
+#: packages/templates/packages/createPackage.html:39
+#: packages/templates/packages/modifyPackage.html:44
+msgid "(0 = Unlimited)"
+msgstr "( 0 = 無制限 )"
+
+#: packages/templates/packages/createPackage.html:43
+#: packages/templates/packages/modifyPackage.html:49
+msgid "Disk Space"
+msgstr "ディスクスの容量"
+
+#: packages/templates/packages/createPackage.html:47
+#: packages/templates/packages/createPackage.html:55
+#: packages/templates/packages/modifyPackage.html:53
+#: packages/templates/packages/modifyPackage.html:61
+msgid "MB (0 = Unlimited)"
+msgstr "MB (0 = 無制限)"
+
+#: packages/templates/packages/createPackage.html:51
+#: packages/templates/packages/modifyPackage.html:57
+msgid "Bandwidth"
+msgstr "帯域幅"
+
+#: packages/templates/packages/createPackage.html:60
+#: packages/templates/packages/modifyPackage.html:66
+msgid "FTP Accounts"
+msgstr "FTP アカウント"
+
+#: packages/templates/packages/createPackage.html:95
+msgid "Cannot create package. Error message:"
+msgstr "パッケージを作成できません。エラーメッセージ:"
+
+#: packages/templates/packages/createPackage.html:99
+msgid "Successfully Created"
+msgstr "作成されました"
+
+#: packages/templates/packages/deletePackage.html:3
+msgid "Delete Package - CyberPanel"
+msgstr "パッケージの削除 - CyberPanel"
+
+#: packages/templates/packages/deletePackage.html:27
+#: packages/templates/packages/modifyPackage.html:24
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:29
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:45
+msgid "Select Package"
+msgstr "パッケージの選択"
+
+#: packages/templates/packages/deletePackage.html:59
+msgid "Cannot delete package. Error message:"
+msgstr "パッケージを削除できません。エラーメッセージ:"
+
+#: packages/templates/packages/deletePackage.html:63
+#: userManagment/templates/userManagment/deleteUser.html:65
+msgid " Successfully Deleted"
+msgstr " 削除されました"
+
+#: packages/templates/packages/index.html:3
+msgid "Packages - CyberPanel"
+msgstr "パッケージ - CyberPanel"
+
+#: packages/templates/packages/modifyPackage.html:3
+msgid "Modify Package - CyberPanel"
+msgstr "パッケージの変更 - CyberPanel"
+
+#: packages/templates/packages/modifyPackage.html:104
+msgid "Cannot fetch package details. Error message:"
+msgstr "パッケージの詳細を取得できません。エラー メッセージ:"
+
+#: packages/templates/packages/modifyPackage.html:108
+msgid "Package Details Successfully Fetched"
+msgstr "パッケージの詳細が取得されました"
+
+#: packages/templates/packages/modifyPackage.html:112
+msgid "Successfully Modified"
+msgstr "更新されました"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:3
+msgid "Access Logs - CyberPanel"
+msgstr "アクセスログ - CyberPanel"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:17
+#: serverLogs/templates/serverLogs/index.html:25
+#: serverLogs/templates/serverLogs/index.html:27
+#: websiteFunctions/templates/websiteFunctions/website.html:121
+msgid "Access Logs"
+msgstr "アクセスログ"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:18
+msgid "Access Logs for main web server."
+msgstr "メイン Web サーバーのアクセスログ。"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:26
+#: serverLogs/templates/serverLogs/emailLogs.html:23
+#: serverLogs/templates/serverLogs/errorLogs.html:23
+#: serverLogs/templates/serverLogs/ftplogs.html:23
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:24
+msgid "Last 50 Lines"
+msgstr "最後の50行"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:42
+#: serverLogs/templates/serverLogs/emailLogs.html:39
+#: serverLogs/templates/serverLogs/errorLogs.html:39
+#: serverLogs/templates/serverLogs/ftplogs.html:39
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:40
+msgid "Refresh"
+msgstr "更新"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:49
+#: serverLogs/templates/serverLogs/emailLogs.html:46
+#: serverLogs/templates/serverLogs/errorLogs.html:46
+#: serverLogs/templates/serverLogs/ftplogs.html:46
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:47
+msgid "Last 50 Lines Fetched"
+msgstr "最後の50行を取得しました"
+
+#: serverLogs/templates/serverLogs/accessLogs.html:54
+#: serverLogs/templates/serverLogs/emailLogs.html:51
+#: serverLogs/templates/serverLogs/errorLogs.html:51
+#: serverLogs/templates/serverLogs/ftplogs.html:51
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:52
+msgid "Could not fetch logs. Use the command line to view the log file."
+msgstr ""
+"ログを取得できませんでした。ログファイルを表示するには、コマンドラインを使用"
+"します。"
+
+#: serverLogs/templates/serverLogs/emailLogs.html:3
+#: serverLogs/templates/serverLogs/errorLogs.html:3
+msgid "Error Logs - CyberPanel"
+msgstr "エラーログ - CyberPanel"
+
+#: serverLogs/templates/serverLogs/emailLogs.html:15
+msgid "Email Logs for main web server."
+msgstr "メイン Web サーバーのメールログ。"
+
+#: serverLogs/templates/serverLogs/errorLogs.html:15
+msgid "Error Logs for main web server."
+msgstr "メイン Web サーバーのエラーログ。"
+
+#: serverLogs/templates/serverLogs/ftplogs.html:3
+msgid "FTP Logs - CyberPanel"
+msgstr "FTP ログ - CyberPanel"
+
+#: serverLogs/templates/serverLogs/ftplogs.html:15
+msgid "FTP Logs for main web server."
+msgstr "メイン Web サーバーの FTP ログ。"
+
+#: serverLogs/templates/serverLogs/index.html:3
+msgid "Server Logs - CyberPanel"
+msgstr "サーバーログ - CyberPanel"
+
+#: serverLogs/templates/serverLogs/index.html:13
+msgid "Server Logs"
+msgstr "サーバーログ"
+
+#: serverLogs/templates/serverLogs/index.html:14
+msgid ""
+"These are the logs from main server, to see logs for your website navigate "
+"to: Websites -> List Websites -> Select Website -> View Logs."
+msgstr ""
+"これらはメインサーバーからのログで、Web サイトのログを見るには次のように操作"
+"します: Web サイト -> Web サイトの一覧 ->Web サイトの選択 -> ログの表示."
+
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:3
+msgid "CyberPanel Main Log File - CyberPanel"
+msgstr "CyberPanel メインログファイル - CyberPanel"
+
+#: serverStatus/templates/serverStatus/cybercpmainlogfile.html:16
+msgid ""
+"This log file corresponds to errors generated by CyberPanel for your domain "
+"errors log you can look into /home/domain/logs."
+msgstr ""
+"このログファイルは CyberPanel によってドメインエラーログ用に生成されたエラー"
+"に対応しており、 /home/domain/logs で調べることができます。"
+
+#: serverStatus/templates/serverStatus/index.html:3
+msgid "Server Status - CyberPanel"
+msgstr "サーバーの状態 - CyberPanel"
+
+#: serverStatus/templates/serverStatus/index.html:14
+msgid "View LiteSpeed status and log files."
+msgstr "LiteSpeed の状態とログファイルを表示します。"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:3
+msgid "LiteSpeed Status - CyberPanel"
+msgstr "LiteSpeed の状態 - CyberPanel"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:16
+msgid "LiteSpeed Status:"
+msgstr "LiteSpeed の状態:"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:17
+msgid ""
+"On this page you can get information regarding your LiteSpeed processes."
+msgstr "このページでは、LiteSpeed プロセスに関する情報を得ることができます。"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:32
+msgid "LiteSpeed Processes"
+msgstr "LiteSpeed 操作"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:39
+msgid "Process ID"
+msgstr "プロセス ID"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:51
+msgid "Main Process"
+msgstr "メイン機能"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:54
+msgid "lscgid Process"
+msgstr "lscgid プロセス"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:57
+msgid "Worker Process"
+msgstr "ワーカー プロセス"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:67
+msgid ""
+"Could not fetch details, either LiteSpeed is not running or some error "
+"occurred, please see CyberPanel Main log file."
+msgstr ""
+"詳細を取得できませんでした.LiteSpeedが実行されていないか、何らかのエラーが発"
+"生しました。CyberPanelメインログファイルを参照してください。"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:72
+msgid "Reboot Litespeed"
+msgstr "LiteSpeed を再起動"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:77
+msgid "Stop LiteSpeed"
+msgstr "LiteSpeed を停止"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:90
+msgid "Error Occurred. See CyberPanel main log file."
+msgstr ""
+"エラーが発生しました。 CyberPanelメインログファイルを参照してください。"
+
+#: serverStatus/templates/serverStatus/litespeedStatus.html:95
+msgid "Could not connect to server."
+msgstr "サーバーに接続できませんでした。"
+
+#: tuning/templates/tuning/index.html:3
+msgid "Server Tuning - CyberPanel"
+msgstr "サーバーのチューニング - CyberPanel"
+
+#: tuning/templates/tuning/index.html:13
+msgid ""
+"On this page you can set runing parameters for your webserver depending on "
+"your hardware."
+msgstr ""
+"このページでは、ハードウェアに応じて Web サーバーのランニングパラメータを設定"
+"できます。"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:3
+msgid "LiteSpeed Tuning - CyberPanel"
+msgstr "LiteSpeed チューニング - CyberPanel"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:13
+msgid ""
+"You can use this page to tweak your server according to your website "
+"requirments."
+msgstr ""
+"このページを使用して、Webサイトの要件に従ってサーバーを調整することができま"
+"す。"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:18
+msgid "Tuning Details"
+msgstr "チューニングの詳細"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:28
+#: tuning/templates/tuning/phpTuning.html:52
+msgid "Max Connections"
+msgstr "最大接続数"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:36
+msgid "Max SSL Connections"
+msgstr "最大 SSL 接続数"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:44
+msgid "Connection Timeout"
+msgstr "接続タイムアウト"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:52
+msgid "Keep Alive Timeout"
+msgstr "Keep Alive タイムアウト"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:60
+msgid "Cache Size in memory"
+msgstr "メモリ内のキャッシュサイズ"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:67
+msgid "Enable GZIP Compression"
+msgstr "GZIP 圧縮を有効にする"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:70
+#: tuning/templates/tuning/phpTuning.html:93
+msgid "Enable"
+msgstr "有効化"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:71
+#: tuning/templates/tuning/phpTuning.html:94
+msgid "Disable"
+msgstr "無効化"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:74
+#: tuning/templates/tuning/phpTuning.html:97
+#: userManagment/templates/userManagment/modifyUser.html:77
+msgid "Currently:"
+msgstr "現在:"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:82
+msgid "Tune Web Server"
+msgstr "Web サーバーをチューニング"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:93
+msgid ""
+"Cannot fetch Current Value, but you can still submit new changes, error "
+"reported from server:"
+msgstr ""
+"現在の値は取得できませんが、サーバーから報告された新しい変更を送信できます:"
+
+#: tuning/templates/tuning/liteSpeedTuning.html:97
+msgid "Cannot save details, Error Message: "
+msgstr "詳細を保存できません、エラーメッセージ: "
+
+#: tuning/templates/tuning/liteSpeedTuning.html:102
+msgid "Web Server Successfully tuned."
+msgstr "Web サーバーをチューニングしました。"
+
+#: tuning/templates/tuning/phpTuning.html:3
+msgid "PHP Tuning - CyberPanel"
+msgstr "PHP チューニング - CyberPanel"
+
+#: tuning/templates/tuning/phpTuning.html:14
+msgid "Set how each version of PHP behaves in your server here."
+msgstr "PHPの各バージョンがサーバー上でどのように動作するかを設定します。"
+
+#: tuning/templates/tuning/phpTuning.html:45
+msgid "Initial Request Timeout (secs)"
+msgstr "初期要求タイムアウト(秒)"
+
+#: tuning/templates/tuning/phpTuning.html:60
+msgid "Memory Soft Limit"
+msgstr "メモリ使用量のソフトリミット"
+
+#: tuning/templates/tuning/phpTuning.html:67
+msgid "Memory Hard Limit"
+msgstr "メモリ使用量のハードリミット"
+
+#: tuning/templates/tuning/phpTuning.html:75
+msgid "Process Soft Limit"
+msgstr "プロセス数のソフトリミット"
+
+#: tuning/templates/tuning/phpTuning.html:82
+msgid "Process Hard Limit"
+msgstr "プロセス数のハードリミット"
+
+#: tuning/templates/tuning/phpTuning.html:90
+msgid "Persistent Connection"
+msgstr "永続的な接続"
+
+#: tuning/templates/tuning/phpTuning.html:105
+msgid "Tune PHP"
+msgstr "PHPをチューニング"
+
+#: tuning/templates/tuning/phpTuning.html:118
+msgid "Cannot tune. Error message:"
+msgstr "チューニングできません。エラー メッセージ:"
+
+#: tuning/templates/tuning/phpTuning.html:123
+msgid "Details Successfully fetched."
+msgstr "詳細が取得されました。"
+
+#: tuning/templates/tuning/phpTuning.html:127
+msgid "PHP version "
+msgstr "PHP バージョン "
+
+#: tuning/templates/tuning/phpTuning.html:127
+msgid "Successfully tuned."
+msgstr "調整されました。"
+
+#: userManagment/templates/userManagment/createUser.html:3
+msgid "Create New User - CyberPanel"
+msgstr "新しいユーザーの作成する - CyberPanel"
+
+#: userManagment/templates/userManagment/createUser.html:13
+msgid "Create root, reseller or normal users on this page."
+msgstr "このページで root 、代理店、または通常のユーザーを作成します。"
+
+#: userManagment/templates/userManagment/createUser.html:19
+msgid "User Details"
+msgstr "ユーザー詳細"
+
+#: userManagment/templates/userManagment/createUser.html:28
+#: userManagment/templates/userManagment/modifyUser.html:39
+#: userManagment/templates/userManagment/userProfile.html:25
+msgid "First Name"
+msgstr "名"
+
+#: userManagment/templates/userManagment/createUser.html:32
+msgid "First Name should contain only alphabetic characters."
+msgstr "名には英字のみを使用してください。"
+
+#: userManagment/templates/userManagment/createUser.html:37
+#: userManagment/templates/userManagment/modifyUser.html:46
+#: userManagment/templates/userManagment/userProfile.html:33
+msgid "Last Name"
+msgstr "姓"
+
+#: userManagment/templates/userManagment/createUser.html:41
+msgid "Last Name should contain only alphabetic characters."
+msgstr "姓には英字のみを使用してください。"
+
+#: userManagment/templates/userManagment/createUser.html:51
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:64
+msgid "Invalid Email"
+msgstr "無効なメールアドレスです"
+
+#: userManagment/templates/userManagment/createUser.html:64
+#: userManagment/templates/userManagment/createUser.html:76
+#: userManagment/templates/userManagment/modifyUser.html:69
+msgid "Account Type"
+msgstr "アカウント種別"
+
+#: userManagment/templates/userManagment/createUser.html:67
+#: userManagment/templates/userManagment/modifyUser.html:72
+msgid "Admin"
+msgstr "管理者"
+
+#: userManagment/templates/userManagment/createUser.html:68
+#: userManagment/templates/userManagment/createUser.html:79
+#: userManagment/templates/userManagment/modifyUser.html:73
+msgid "Normal User"
+msgstr "通常のユーザー"
+
+#: userManagment/templates/userManagment/createUser.html:92
+#: userManagment/templates/userManagment/modifyUser.html:88
+#: userManagment/templates/userManagment/userProfile.html:67
+#: userManagment/templates/userManagment/userProfile.html:74
+msgid "User Accounts Limit"
+msgstr "ユーザーアカウントの制限"
+
+#: userManagment/templates/userManagment/createUser.html:96
+#: userManagment/templates/userManagment/createUser.html:107
+msgid "Only Numbers"
+msgstr "数字のみ"
+
+#: userManagment/templates/userManagment/createUser.html:103
+#: userManagment/templates/userManagment/modifyUser.html:98
+#: userManagment/templates/userManagment/userProfile.html:82
+msgid "Websites Limit"
+msgstr "Web サイトの制限"
+
+#: userManagment/templates/userManagment/createUser.html:113
+#: userManagment/templates/userManagment/userProfile.html:42
+msgid "Username"
+msgstr "ユーザー名"
+
+#: userManagment/templates/userManagment/createUser.html:117
+msgid "Username should be lowercase alphanumeric."
+msgstr "ユーザー名は小文字の英数字である必要があります。"
+
+#: userManagment/templates/userManagment/createUser.html:127
+msgid "Must contain one number and one special character."
+msgstr "1 つの数字と 1 つの特殊文字を含める必要があります。"
+
+#: userManagment/templates/userManagment/createUser.html:143
+#: userManagment/templates/userManagment/index.html:40
+#: userManagment/templates/userManagment/index.html:42
+msgid "Create User"
+msgstr "ユーザーを作成"
+
+#: userManagment/templates/userManagment/createUser.html:154
+#: userManagment/templates/userManagment/modifyUser.html:130
+msgid "Account with username:"
+msgstr "ユーザー名を持つアカウント:"
+
+#: userManagment/templates/userManagment/createUser.html:158
+msgid "Cannot create user. Error message:"
+msgstr "ユーザーを作成できません。エラーメッセージ:"
+
+#: userManagment/templates/userManagment/createUser.html:166
+msgid ""
+"Length of first and last name combined should be less than or equal to 20 "
+"characters"
+msgstr "結合された姓と名の長さは20文字以下でなければなりません"
+
+#: userManagment/templates/userManagment/deleteUser.html:3
+msgid "Delete User - CyberPanel"
+msgstr "ユーザーの削除 - CyberPanel"
+
+#: userManagment/templates/userManagment/deleteUser.html:14
+msgid "Websites owned by this user will automatically transfer to the root."
+msgstr "このユーザーが所有する Web サイトは自動的に root に転送されます。"
+
+#: userManagment/templates/userManagment/deleteUser.html:29
+msgid "Select User"
+msgstr "ユーザーを選択"
+
+#: userManagment/templates/userManagment/deleteUser.html:61
+msgid "Cannot delete user. Error message:"
+msgstr "ユーザーを削除できません。エラーメッセージ:"
+
+#: userManagment/templates/userManagment/deleteUser.html:65
+msgid "User "
+msgstr "ユーザー "
+
+#: userManagment/templates/userManagment/index.html:3
+msgid "User Functions - CyberPanel"
+msgstr "ユーザ機能 - CyberPanel"
+
+#: userManagment/templates/userManagment/index.html:14
+msgid "Create, edit and delete users on this page."
+msgstr "このページでユーザーを作成、編集、削除を行います。"
+
+#: userManagment/templates/userManagment/modifyUser.html:3
+msgid "Modify User - CyberPanel"
+msgstr "ユーザーの変更 - CyberPanel"
+
+#: userManagment/templates/userManagment/modifyUser.html:13
+msgid "Modify existing user settings on this page."
+msgstr "このページで既存のユーザー設定を変更します。"
+
+#: userManagment/templates/userManagment/modifyUser.html:26
+msgid "Select Account"
+msgstr "アカウントを選択"
+
+#: userManagment/templates/userManagment/modifyUser.html:130
+msgid " is successfully modified."
+msgstr " 更新されました。"
+
+#: userManagment/templates/userManagment/modifyUser.html:134
+msgid "Cannot modify user. Error message:"
+msgstr "ユーザーを変更できません。エラー メッセージ:"
+
+#: userManagment/templates/userManagment/modifyUser.html:147
+msgid "Details fetched."
+msgstr "詳細が取得されました。"
+
+#: userManagment/templates/userManagment/userProfile.html:3
+msgid "Account Details - CyberPanel"
+msgstr "アカウント詳細 - CyberPanel"
+
+#: userManagment/templates/userManagment/userProfile.html:12
+#: userManagment/templates/userManagment/userProfile.html:18
+msgid "Account Details"
+msgstr "アカウント詳細"
+
+#: userManagment/templates/userManagment/userProfile.html:13
+msgid "List the account details for the currently logged in user."
+msgstr "現在ログインしているユーザーアカウントの詳細を一覧表示します。"
+
+#: userManagment/templates/userManagment/userProfile.html:58
+msgid "Account Level"
+msgstr "アカウントレベル"
+
+#: userManagment/templates/userManagment/userProfile.html:69
+#: userManagment/templates/userManagment/userProfile.html:76
+#: userManagment/templates/userManagment/userProfile.html:84
+msgid "( 0 = Unlimited )"
+msgstr "( 0 = 無制限 )"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:3
+msgid "Create New Website - CyberPanel"
+msgstr "新しい Web サイトの作成する - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:13
+#: websiteFunctions/templates/websiteFunctions/index.html:14
+#: websiteFunctions/templates/websiteFunctions/listWebsites.html:15
+msgid ""
+"On this page you can launch, list, modify and delete websites from your "
+"server."
+msgstr ""
+"このページでは、サーバーから Web サイトを起動、一覧表示、変更、削除することが"
+"できます。"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:20
+msgid "Website Details"
+msgstr "Web サイトの詳細"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:40
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:56
+msgid "Select Owner"
+msgstr "所有者を選択"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:56
+#: websiteFunctions/templates/websiteFunctions/website.html:294
+#: websiteFunctions/templates/websiteFunctions/website.html:305
+msgid "Invalid Domain (Note: You don't need to add 'http' or 'https')"
+msgstr ""
+"無効なドメイン(注: 'http' または 'https' を追加する必要はありません)"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:84
+#: websiteFunctions/templates/websiteFunctions/website.html:326
+msgid "Additional Features"
+msgstr "その他の機能"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:91
+#: websiteFunctions/templates/websiteFunctions/website.html:333
+msgid ""
+"For SSL to work DNS of domain should point to server, otherwise self signed "
+"SSL will be issued, you can add your own SSL later."
+msgstr ""
+"SSL はドメインがサーバーを指して DNS が動作す必要があります。それ以外は、自己"
+"署名された SSL が発行されます。後で独自の SSL を追加できます。"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:113
+#: websiteFunctions/templates/websiteFunctions/website.html:355
+msgid "Cannot create website. Error message:"
+msgstr "Web サイトを作成できません。エラーメッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:117
+#: websiteFunctions/templates/websiteFunctions/website.html:359
+msgid "Website with domain"
+msgstr "ドメインを持つ Web サイト"
+
+#: websiteFunctions/templates/websiteFunctions/createWebsite.html:117
+#: websiteFunctions/templates/websiteFunctions/website.html:359
+msgid " is Successfully Created"
+msgstr " 作成されました"
+
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:3
+msgid "Delete Website - CyberPanel"
+msgstr "Web サイトの削除 - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:13
+msgid ""
+"This page can be used to delete website, once deleted it can not be "
+"recovered."
+msgstr ""
+"このページは、Web サイトの削除に使用できます。ただし、一度削除すると元に戻す"
+"ことはできません。"
+
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:61
+msgid "Cannot delete website, Error message: "
+msgstr "Web サイトを削除できません、エラーメッセージ: "
+
+#: websiteFunctions/templates/websiteFunctions/deleteWebsite.html:65
+msgid "Successfully Deleted."
+msgstr "削除されました。"
+
+#: websiteFunctions/templates/websiteFunctions/index.html:3
+msgid "Website Functions - CyberPanel"
+msgstr "Web サイト機能 - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/index.html:70
+#: websiteFunctions/templates/websiteFunctions/index.html:72
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:13
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:20
+msgid "Suspend/Unsuspend Website"
+msgstr "Web サイトの休止/休止解除"
+
+#: websiteFunctions/templates/websiteFunctions/listWebsites.html:3
+msgid "Websites Hosted - CyberPanel"
+msgstr "ホストされているWebサイト - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/listWebsites.html:51
+msgid "Cannot list websites. Error message:"
+msgstr "Web サイトの一覧が表示できません。エラーメッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:3
+msgid "Modify Website - CyberPanel"
+msgstr "Web サイトの変更 - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:51
+msgid "Current Package:"
+msgstr "現在のパッケージ:"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:62
+msgid "Current Owner:"
+msgstr "現在の所有者:"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:104
+msgid "Cannot fetch website details. Error message:"
+msgstr "Web サイトの詳細を取得できません。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:108
+msgid "Cannot modify website. Error message:"
+msgstr "Web サイトを変更することができません。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/modifyWebsite.html:112
+msgid "Website Details Successfully fetched"
+msgstr "Web サイトの詳細が取得されました"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:3
+msgid "Suspend/Unsuspend Website - CyberPanel"
+msgstr "Web サイトの休止/休止解除 - CyberPanel"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:14
+msgid "This page can be used to suspend/unsuspend website."
+msgstr "このページは Web サイトの休止/休止解除に使用できます。"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:44
+msgid "Suspend"
+msgstr "休止"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:45
+msgid "Un-Suspend"
+msgstr "休止の解除"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:65
+msgid "Cannot suspend website, Error message: "
+msgstr "Web サイトを休止できません、エラーメッセージ: "
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:69
+msgid "Cannot unsuspend website. Error message:"
+msgstr "Web サイトの休止解除ができません。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:73
+msgid "Website "
+msgstr "Web サイト "
+
+#: websiteFunctions/templates/websiteFunctions/suspendWebsite.html:73
+msgid "Successfully "
+msgstr "成功しました "
+
+#: websiteFunctions/templates/websiteFunctions/website.html:15
+msgid "All functions related to a particular site."
+msgstr "すべての機能は、特定のサイトに関連します。"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:23
+msgid "Resource Usage"
+msgstr "リソースの使用量"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:32
+msgid "Resource"
+msgstr "リソース"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:34
+msgid "Allowed"
+msgstr "許可"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:56
+#: websiteFunctions/templates/websiteFunctions/website.html:83
+msgid "Bandwidth Usage"
+msgstr "帯域幅の使用量"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:119
+msgid "Load Access Logs"
+msgstr "アクセス ログを読み込む"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:131
+msgid "Load Error Logs"
+msgstr "エラー ログを読み込む"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:147
+msgid "Logs Fetched"
+msgstr "ログが取得されました"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:152
+msgid ""
+"Could not fetch logs, see the logs file through command line. Error message:"
+msgstr ""
+"ログを取得できませんでした、コマンドラインからログファイルを参照してくださ"
+"い。 エラーメッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:173
+#: websiteFunctions/templates/websiteFunctions/website.html:212
+msgid "Next"
+msgstr "次へ"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:174
+#: websiteFunctions/templates/websiteFunctions/website.html:213
+msgid "Previous"
+msgstr "前へ"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:257
+#: websiteFunctions/templates/websiteFunctions/website.html:259
+msgid "Add Domains"
+msgstr "ドメインの追加"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:269
+#: websiteFunctions/templates/websiteFunctions/website.html:271
+msgid "List Domains"
+msgstr "ドメインの一覧"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:301
+#: websiteFunctions/templates/websiteFunctions/website.html:760
+msgid "Path"
+msgstr "パス"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:303
+msgid "This path is relative to: "
+msgstr "このパスからの相対: "
+
+#: websiteFunctions/templates/websiteFunctions/website.html:303
+msgid "Leave empty to set default."
+msgstr "デフォルトを設定するには、空のままにします。"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:344
+msgid "Create Domain"
+msgstr "ドメインの作成"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:387
+msgid "PHP Version Changed to:"
+msgstr "PHP のバージョンを変更:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:391
+msgid "Deleted:"
+msgstr "削除済み:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:395
+msgid "SSL Issued:"
+msgstr "SSLの発行:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:418
+msgid "Close"
+msgstr "閉じる"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:450
+msgid "Issue"
+msgstr "発行"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:478
+msgid "Configurations"
+msgstr "設定"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:484
+msgid "Edit Virtual Host Main Configurations"
+msgstr "仮想ホストのメイン設定の編集"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:486
+msgid "Edit vHost Main Configurations"
+msgstr "メイン vHost 設定の編集"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:496
+#: websiteFunctions/templates/websiteFunctions/website.html:498
+msgid "Add Rewrite Rules (.htaccess)"
+msgstr "Rewrite ルールを追加 (.htaccess)"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:508
+msgid "Add Your Own SSL"
+msgstr "独自のSSLを追加"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:510
+msgid "Add SSL"
+msgstr "SSL を追加"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:525
+msgid "SSL Saved"
+msgstr "SSL を保存しました"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:530
+msgid "Could not save SSL. Error message:"
+msgstr "SSL を保存できませんでした。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:580
+msgid "Current configuration in the file fetched."
+msgstr "取得されたファイル内にある現在の設定。"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:585
+#: websiteFunctions/templates/websiteFunctions/website.html:598
+msgid "Could not fetch current configuration. Error message:"
+msgstr "現在の設定を取得できませんでした。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:594
+#: websiteFunctions/templates/websiteFunctions/website.html:649
+msgid "Configuration saved. Restart LiteSpeed put them in effect."
+msgstr "設定が保存されました。 LiteSpeed を再起動して有効にします。"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:635
+msgid "Current rewrite rules in the file fetched."
+msgstr "取得されたファイル内にある現在の rewrite ルール。"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:640
+msgid "Could not fetch current rewrite rules. Error message:"
+msgstr "現在の rewrite ルールを取得できませんでした。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:653
+msgid "Could not save rewrite rules. Error message:"
+msgstr "rewrite ルールを保存できませんでした。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:669
+msgid "Save Rewrite Rules"
+msgstr "Rewrite ルールを保存"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:692
+msgid "Files"
+msgstr "ファイル"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:699
+#: websiteFunctions/templates/websiteFunctions/website.html:701
+msgid "File Manager"
+msgstr "ファイル 管理"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:740
+msgid "Application Installer"
+msgstr "アプリケーションインストーラー"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:746
+msgid "Install wordpress with LSCache"
+msgstr "LSCache で Wordpress をインストールする"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:748
+msgid "Wordpress with LSCache"
+msgstr "Wordpress の LSCache"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:782
+msgid "Installation failed. Error message:"
+msgstr "インストールに失敗しました。エラー メッセージ:"
+
+#: websiteFunctions/templates/websiteFunctions/website.html:786
+msgid "Installation successful. To complete the setup visit:"
+msgstr "インストールに成功しました。 セットアップを完了するには:"
+
+#~ msgid "Reseller"
+#~ msgstr "代理店"
+
+#~ msgid "Urdu"
+#~ msgstr "ウルドゥー語"
diff --git a/loginSystem/templates/loginSystem/login.html b/loginSystem/templates/loginSystem/login.html
index 691f3ab9b..0fcfe9c82 100755
--- a/loginSystem/templates/loginSystem/login.html
+++ b/loginSystem/templates/loginSystem/login.html
@@ -289,8 +289,8 @@
-
-
+
+
diff --git a/mailServer/views.py b/mailServer/views.py
index cc1eeea09..4f7a4d8cb 100644
--- a/mailServer/views.py
+++ b/mailServer/views.py
@@ -63,22 +63,34 @@ def submitEmailCreation(request):
path = "/usr/local/CyberCP/install/rainloop/cyberpanel.net.ini"
if not os.path.exists("/usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/domains/"):
- os.makedirs("/usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/domains/")
+ command = 'sudo mkdir -p /usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/domains'
+ cmd = shlex.split(command)
+ res = subprocess.call(cmd)
finalPath = "/usr/local/lscp/cyberpanel/rainloop/data/_data_/_default_/domains/" + domain + ".ini"
if not os.path.exists(finalPath):
- shutil.copy(path,finalPath)
+ command = 'sudo cp '+path +" "+finalPath
- command = 'chown -R nobody:nobody /usr/local/lscp/rainloop'
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ command = 'sudo chown -R nobody:nobody /usr/local/lscp/rainloop'
cmd = shlex.split(command)
res = subprocess.call(cmd)
- command = 'chown -R nobody:nobody /usr/local/lscp/cyberpanel/rainloop/data/_data_'
+ command = 'sudo chown -R nobody:nobody /usr/local/lscp/cyberpanel/rainloop/data/_data_'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ command = 'sudo chown -R vmail:vmail /home/vmail'
cmd = shlex.split(command)
diff --git a/manageSSL/views.py b/manageSSL/views.py
index 780180113..beafbb48f 100644
--- a/manageSSL/views.py
+++ b/manageSSL/views.py
@@ -251,7 +251,7 @@ def obtainHostNameSSL(request):
shutil.copy(srcPrivKey, destPrivKey)
shutil.copy(srcFullChain, destCert)
- command = 'systemctl restart lscpd'
+ command = 'sudo systemctl restart lscpd'
cmd = shlex.split(command)
@@ -287,7 +287,7 @@ def obtainHostNameSSL(request):
shutil.copy(srcPrivKey, destPrivKey)
shutil.copy(srcFullChain, destCert)
- command = 'systemctl restart lscpd'
+ command = 'sudo systemctl restart lscpd'
cmd = shlex.split(command)
diff --git a/plogical/backupSchedule.py b/plogical/backupSchedule.py
index 3f5ea0b36..d276f49a2 100644
--- a/plogical/backupSchedule.py
+++ b/plogical/backupSchedule.py
@@ -59,11 +59,10 @@ class backupSchedule:
logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [startBackup]")
-
@staticmethod
def sendBackup(backupPath,IPAddress,writeToFile):
try:
- command ='rsync -avz -e "ssh -i /root/.ssh/cyberpanel" '+ backupPath+ ' root@'+IPAddress+':/home/backup/'+time.strftime("%a-%b")+"/"
+ command ='rsync -avz -e "ssh -i /home/cyberpanel/.ssh/cyberpanel -o StrictHostKeyChecking=no" '+ backupPath+ ' cyberpanel@'+IPAddress+':/home/backup/'+time.strftime("%a-%b")+"/"
subprocess.call(shlex.split(command),stdout=writeToFile)
diff --git a/plogical/backupUtilities.py b/plogical/backupUtilities.py
index 56db9f2f2..2395d172f 100644
--- a/plogical/backupUtilities.py
+++ b/plogical/backupUtilities.py
@@ -11,10 +11,13 @@ from multiprocessing import Process
import json
import requests
import signal
-
+from installUtilities import installUtilities
class backupUtilities:
+ completeKeyPath = "/home/cyberpanel/.ssh"
+
+
@staticmethod
def startBackup(tempStoragePath,backupName,backupPath):
try:
@@ -24,6 +27,7 @@ class backupUtilities:
status = open(backupPath+'status',"w")
status.write(backupName+"\n")
status.write("Making archive of home directory\n")
+ logging.CyberCPLogFileWriter.writeToFile("Making archive of home directory")
status.close()
count = 0
@@ -42,6 +46,7 @@ class backupUtilities:
dbName = items.split('-')[0]
status = open(backupPath + 'status', "w")
status.write(backupName + "\n")
+ logging.CyberCPLogFileWriter.writeToFile("Backing up database: " + dbName)
status.write("Backing up database: " + dbName)
status.close()
mysqlUtilities.mysqlUtilities.createDatabaseBackup(dbName, tempStoragePath)
@@ -52,6 +57,7 @@ class backupUtilities:
status = open(backupPath + 'status', "w")
status.write(backupName + "\n")
+ logging.CyberCPLogFileWriter.writeToFile("completed")
status.write("completed\n")
status.close()
@@ -244,6 +250,14 @@ class backupUtilities:
status = open(completPath + '/status', "w")
status.write("Done")
status.close()
+ installUtilities.reStartLiteSpeed()
+
+ command = "sudo chown -R nobody:cyberpanel "+websiteHome
+
+ cmd = shlex.split(command)
+
+ subprocess.call(cmd)
+
except BaseException, msg:
@@ -260,8 +274,12 @@ class backupUtilities:
@staticmethod
def sendKey(IPAddress,password):
try:
+ if not os.path.exists(backupUtilities.completeKeyPath+"/cyberpanel"):
+ command = "ssh-keygen -f "+backupUtilities.completeKeyPath+"/cyberpanel -t rsa -N ''"
+ cmd = shlex.split(command)
+ res = subprocess.call(cmd)
- sendKeyProc = pexpect.spawn("scp /root/.ssh/cyberpanel.pub root@"+IPAddress+":/root/.ssh/authorized_keys")
+ sendKeyProc = pexpect.spawn("scp "+backupUtilities.completeKeyPath+"/cyberpanel.pub root@"+IPAddress+":"+backupUtilities.completeKeyPath+"/authorized_keys")
sendKeyProc.expect("password:")
sendKeyProc.sendline(password)
@@ -284,7 +302,6 @@ class backupUtilities:
@staticmethod
def setupSSHKeys(IPAddress, password):
try:
-
## Checking for host verification
backupUtilities.host_key_verification(IPAddress)
@@ -299,7 +316,7 @@ class backupUtilities:
expectation.append("continue connecting (yes/no)?")
expectation.append("password:")
- setupSSHKeys = pexpect.spawn("ssh root@"+IPAddress+" mkdir /root/.ssh")
+ setupSSHKeys = pexpect.spawn("ssh cyberpanel@"+IPAddress+" mkdir "+backupUtilities.keyPath)
index = setupSSHKeys.expect(expectation)
@@ -323,7 +340,7 @@ class backupUtilities:
## setting up keys.
if backupUtilities.sendKey(IPAddress,password) == 0:
- return "Can't setup connection, check CyberCP Main log file."
+ return "Can't setup connection, check CyberPanel Main log file."
else:
return 1
@@ -335,12 +352,10 @@ class backupUtilities:
## setting up keys.
if backupUtilities.sendKey(IPAddress,password) == 0:
- return "Can't setup connection, check CyberCP Main log file."
+ return "Can't setup connection, check CyberPanel Main log file."
else:
return 1
- print "keysInstalled"
-
else:
return "Wrong Password"
@@ -362,12 +377,11 @@ class backupUtilities:
## setting up keys.
if backupUtilities.sendKey(IPAddress,password) == 0:
- return "Can't setup connection, check CyberCP Main log file."
+ return "Can't setup connection, check CyberPanel Main log file."
else:
return 1
elif innerIndex == 1:
- print "Created"
setupSSHKeys.wait()
## setting up keys.
@@ -375,7 +389,7 @@ class backupUtilities:
## setting up keys.
if backupUtilities.sendKey(IPAddress,password) == 0:
- return "Can't setup connection, check CyberCP Main log file."
+ return "Can't setup connection, check CyberPanel Main log file."
else:
return 1
@@ -404,14 +418,12 @@ class backupUtilities:
@staticmethod
def checkConnection(IPAddress):
try:
- backupUtilities.verifyHostKey(IPAddress)
-
expectation = []
expectation.append("password:")
expectation.append("Last login")
expectation.append(pexpect.EOF)
- checkConn = pexpect.spawn("ssh -i /root/.ssh/cyberpanel root@"+IPAddress, timeout=3)
+ checkConn = pexpect.spawn("ssh -i /home/cyberpanel/.ssh/cyberpanel -o StrictHostKeyChecking=no cyberpanel@"+IPAddress, timeout=3)
index = checkConn.expect(expectation)
if index == 0:
@@ -425,7 +437,7 @@ class backupUtilities:
subprocess.call(['kill', str(checkConn.pid)])
logging.CyberCPLogFileWriter.writeToFile(
"Remote Server is not able to authenticate for transfer to initiate, IP Address:" + IPAddress)
- return [0, "Remote Server is not able to authenticate for transfer to initiate."]
+ return [0, "Remote Server is not able to authenticate for transfer to initiate, IP Address:" + IPAddress]
except pexpect.TIMEOUT, msg:
logging.CyberCPLogFileWriter.writeToFile("Timeout "+IPAddress+ " [checkConnection]")
@@ -449,7 +461,7 @@ class backupUtilities:
expectation.append("continue connecting (yes/no)?")
expectation.append("password:")
- setupSSHKeys = pexpect.spawn("ssh root@" + IPAddress)
+ setupSSHKeys = pexpect.spawn("ssh cyberpanel@" + IPAddress, timeout=3)
index = setupSSHKeys.expect(expectation)
@@ -509,7 +521,7 @@ class backupUtilities:
def createBackupDir(IPAddress,IPAddressA):
try:
- command = "ssh -i /root/.ssh/cyberpanel root@"+IPAddress+" mkdir /home/backup"
+ command = "ssh -i /home/cyberpanel/.ssh/cyberpanel cyberpanel@"+IPAddress+" mkdir /home/backup"
shlex.split(command)
@@ -522,6 +534,7 @@ class backupUtilities:
@staticmethod
def initiateBackupDirCreation(IPAddress):
try:
+ backupUtilities.verifyHostKey(IPAddress)
thread.start_new_thread(backupUtilities.createBackupDir, (IPAddress,IPAddress))
except BaseException,msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [initiateBackupDirCreation]")
@@ -529,7 +542,7 @@ class backupUtilities:
@staticmethod
def host_key_verification(IPAddress):
try:
- command = 'ssh-keygen -R '+IPAddress
+ command = 'sudo ssh-keygen -R '+IPAddress
shlex.split(command)
diff --git a/plogical/firewallUtilities.py b/plogical/firewallUtilities.py
index c7aaac87c..ad04f9aa6 100644
--- a/plogical/firewallUtilities.py
+++ b/plogical/firewallUtilities.py
@@ -20,13 +20,13 @@ class FirewallUtilities:
ruleProtocol = 'port protocol="' + proto + '"'
rulePort = 'port="' + port + '"'
- command = "firewall-cmd --permanent --zone=public --add-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
+ command = "sudo firewall-cmd --permanent --zone=public --add-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
cmd = shlex.split(command)
res = subprocess.call(cmd)
- command = 'firewall-cmd --reload'
+ command = 'sudo firewall-cmd --reload'
cmd = shlex.split(command)
@@ -49,13 +49,13 @@ class FirewallUtilities:
ruleProtocol = 'port protocol="' + proto + '"'
rulePort = 'port="' + port + '"'
- command = "firewall-cmd --permanent --zone=public --remove-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
+ command = "sudo firewall-cmd --permanent --zone=public --remove-rich-rule='" + ruleFamily + " " + sourceAddress + " " + ruleProtocol + " " + rulePort + " " + "accept'"
cmd = shlex.split(command)
res = subprocess.call(cmd)
- command = 'firewall-cmd --reload'
+ command = 'sudo firewall-cmd --reload'
cmd = shlex.split(command)
diff --git a/plogical/ftpUtilities.py b/plogical/ftpUtilities.py
index 6088698d6..b9610043b 100644
--- a/plogical/ftpUtilities.py
+++ b/plogical/ftpUtilities.py
@@ -2,6 +2,7 @@ import mysqlUtilities as sql
import subprocess
import CyberCPLogFileWriter as logging
import os
+import shlex
class FTPUtilities:
@@ -182,31 +183,29 @@ class FTPUtilities:
try:
- cmd = []
- cmd.append("chmod")
- cmd.append("-R")
- cmd.append("774")
- cmd.append(directory)
+ command = "sudo chmod -R 775 " + directory
+
+ cmd = shlex.split(command)
res = subprocess.call(cmd)
+
if res == 1:
print "Permissions not changed."
return 0
else:
print "User permissions setted."
- cmd = []
- cmd.append("chown")
- cmd.append("-R")
- cmd.append("nobody:nobody")
- cmd.append(directory)
+
+
+ command = "sudo chown -R nobody:cyberpanel " + directory
+
+ cmd = shlex.split(command)
res = subprocess.call(cmd)
+
if res == 1:
- print "Permissions not changed."
return 0
else:
- print "User permissions setted."
return 1
except BaseException, msg:
diff --git a/plogical/installUtilities.py b/plogical/installUtilities.py
index bcd589340..0533d9bbe 100644
--- a/plogical/installUtilities.py
+++ b/plogical/installUtilities.py
@@ -5,6 +5,7 @@ import shutil
import pexpect
import os
import thread
+import shlex
class installUtilities:
@@ -135,20 +136,39 @@ class installUtilities:
@staticmethod
def reStartLiteSpeed():
try:
- thread.start_new_thread(installUtilities.reStartOpenLiteSpeed, ("restart","restart"))
- except BaseException,msg:
- logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [restartLiteSpeed]")
+ command = "sudo systemctl restart lsws"
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ if res == 1:
+ print("###############################################")
+ print(" Could not restart Litespeed serve ")
+ print("###############################################")
+ sys.exit()
+ else:
+ print("###############################################")
+ print(" Litespeed Re-Started ")
+ print("###############################################")
+
+
+ except OSError, msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [reStartLiteSpeed]")
+ return 0
+ except ValueError, msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [reStartLiteSpeed]")
+ return 0
+ return 1
@staticmethod
def reStartOpenLiteSpeed(restart,orestart):
-
try:
- cmd = []
+ command = "sudo systemctl restart lsws"
- cmd.append("/usr/local/lsws/bin/lswsctrl")
- cmd.append("restart")
+ cmd = shlex.split(command)
res = subprocess.call(cmd)
diff --git a/plogical/mysqlUtilities.py b/plogical/mysqlUtilities.py
index f559cfde4..33d121dc9 100644
--- a/plogical/mysqlUtilities.py
+++ b/plogical/mysqlUtilities.py
@@ -146,7 +146,7 @@ class mysqlUtilities:
data = f.read()
password = data.split('\n', 1)[0]
- command = 'mysqldump -u root -p'+password+' '+databaseName
+ command = 'sudo mysqldump -u root -p'+password+' '+databaseName
cmd = shlex.split(command)
@@ -170,7 +170,7 @@ class mysqlUtilities:
password = data.split('\n', 1)[0]
- command = 'mysql -u root -p' + password + ' ' + databaseName
+ command = 'sudo mysql -u root -p' + password + ' ' + databaseName
cmd = shlex.split(command)
@@ -184,7 +184,7 @@ class mysqlUtilities:
passwordCMD = "use mysql;SET PASSWORD FOR '"+databaseName+"'@'localhost' = '"+dbPassword+"';FLUSH PRIVILEGES;"
- command = 'mysql -u root -p'+password+' -e "'+passwordCMD+'"'
+ command = 'sudo mysql -u root -p'+password+' -e "'+passwordCMD+'"'
cmd = shlex.split(command)
res = subprocess.call(cmd)
diff --git a/plogical/phpUtilities.py b/plogical/phpUtilities.py
index 0cd70e791..309324431 100644
--- a/plogical/phpUtilities.py
+++ b/plogical/phpUtilities.py
@@ -10,7 +10,7 @@ class phpUtilities:
def installPHPExtension(extension,extensions):
try:
- command = 'yum install '+extension +' -y'
+ command = 'sudo yum install '+extension +' -y'
cmd = shlex.split(command)
@@ -36,7 +36,7 @@ class phpUtilities:
def unInstallPHPExtension(extension,extensions):
try:
- command = 'rpm --nodeps -e ' + extension + ' -v'
+ command = 'sudo rpm --nodeps -e ' + extension + ' -v'
cmd = shlex.split(command)
diff --git a/plogical/remoteBackup.py b/plogical/remoteBackup.py
index efcb68ad7..b8dc1a114 100644
--- a/plogical/remoteBackup.py
+++ b/plogical/remoteBackup.py
@@ -252,7 +252,7 @@ class remoteBackup:
try:
## complete path is a path to the file need to send
- command = 'rsync -avz -e "ssh -i /root/.ssh/cyberpanel" ' + completedPathToSend + ' root@' + IPAddress + ':/home/backup/transfer-'+folderNumber
+ command = 'sudo rsync -avz -e "ssh -i /home/cyberpanel/.ssh/cyberpanel -o StrictHostKeyChecking=no" ' + completedPathToSend + ' cyberpanel@' + IPAddress + ':/home/backup/transfer-'+folderNumber
subprocess.call(shlex.split(command), stdout=writeToFile)
except BaseException, msg:
@@ -321,6 +321,9 @@ class remoteBackup:
remoteBackup.sendBackup(completedPathToSend,ipAddress,str(folderNumber),writeToFile)
+ writeToFile.writelines("[" + time.strftime(
+ "%I-%M-%S-%a-%b-%Y") + "]" + " Sent " + completedPathToSend + " to " + ipAddress + ".\n")
+
writeToFile.writelines("[" + time.strftime(
"%I-%M-%S-%a-%b-%Y") + "]" + " #############################################" + "\n")
@@ -347,18 +350,6 @@ class remoteBackup:
@staticmethod
def remoteTransfer(ipAddress, dir,accountsToTransfer):
try:
- ## fix yes/no
-
- verify = backupUtil.backupUtilities.verifyHostKey(ipAddress)
-
- ## if verification failed, return with error message
-
- if verify[0] == 1:
- pass
- else:
- return [0,verify[1]]
-
- ####
destination = "/home/backup/transfer-" + dir
backupLogPath = destination + "/backup_log"
diff --git a/plogical/sslUtilities.py b/plogical/sslUtilities.py
index 8a7693c23..206ee7665 100644
--- a/plogical/sslUtilities.py
+++ b/plogical/sslUtilities.py
@@ -135,18 +135,17 @@ class sslUtilities:
@staticmethod
def obtainSSLForADomain(virtualHostName,adminEmail,sslpath):
-
try:
-
#if virtualHostName.count(".")==1:
- # command = "certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName + " -d www." + virtualHostName
+ # command = "sudo certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName + " -d www." + virtualHostName
#else:
- # command = "certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName
+ # command = "sudo certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName
- command = "certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName
+ command = "sudo certbot certonly -n --agree-tos --email " + adminEmail + " --webroot -w " + sslpath + " -d " + virtualHostName
+
expectation = []
@@ -187,7 +186,7 @@ class sslUtilities:
pathToStoreSSLFullChain = pathToStoreSSL + "/fullchain.pem"
- command = 'openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
+ command = 'sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
cmd = shlex.split(command)
@@ -207,7 +206,7 @@ class sslUtilities:
pathToStoreSSLPrivKey = pathToStoreSSL + "/privkey.pem"
pathToStoreSSLFullChain = pathToStoreSSL + "/fullchain.pem"
- command = 'openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
+ command = 'sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
cmd = shlex.split(command)
@@ -267,7 +266,7 @@ class sslUtilities:
pathToStoreSSLPrivKey = pathToStoreSSL + "/privkey.pem"
pathToStoreSSLFullChain = pathToStoreSSL + "/fullchain.pem"
- command = 'openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
+ command = 'sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
cmd = shlex.split(command)
@@ -294,7 +293,7 @@ class sslUtilities:
pathToStoreSSLPrivKey = pathToStoreSSL + "/privkey.pem"
pathToStoreSSLFullChain = pathToStoreSSL + "/fullchain.pem"
- command = 'openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
+ command = 'sudo openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 -subj "/C=US/ST=Denial/L=Springfield/O=Dis/CN=www.example.com" -keyout ' + pathToStoreSSLPrivKey + ' -out ' + pathToStoreSSLFullChain
cmd = shlex.split(command)
@@ -302,6 +301,14 @@ class sslUtilities:
return 1
+ ## fix permissions
+
+ command = 'sudo chown -R cyberpanel:cyberpanel /etc/letsencrypt'
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
###### Copy SSL To config location ######
diff --git a/plogical/test.py b/plogical/test.py
index 6de77b8b9..dd36fbdda 100644
--- a/plogical/test.py
+++ b/plogical/test.py
@@ -5,73 +5,18 @@ from CyberCPLogFileWriter import CyberCPLogFileWriter as logging
import time
from backupUtilities import backupUtilities
import signal
+import shlex
+import subprocess
-def verifyHostKey(IPAddress):
- try:
- backupUtilities.host_key_verification(IPAddress)
+def verifyHostKey(directory):
+ command = "sudo chmod -R 775 " + directory
- password = "hello"
+ print command
- expectation = []
+ cmd = shlex.shlex(command)
- expectation.append("continue connecting (yes/no)?")
- expectation.append("password:")
-
- setupSSHKeys = pexpect.spawn("ssh root@" + IPAddress)
-
- index = setupSSHKeys.expect(expectation)
-
- if index == 0:
- setupSSHKeys.sendline("yes")
-
- setupSSHKeys.expect("password:")
- setupSSHKeys.sendline(password)
-
- expectation = []
-
- expectation.append("password:")
- expectation.append(pexpect.EOF)
-
-
- innerIndex = setupSSHKeys.expect(expectation)
-
- if innerIndex == 0:
- setupSSHKeys.kill(signal.SIGTERM)
- return [1, "None"]
- elif innerIndex == 1:
- setupSSHKeys.kill(signal.SIGTERM)
- return [1, "None"]
-
- elif index == 1:
-
- setupSSHKeys.expect("password:")
- setupSSHKeys.sendline(password)
-
- expectation = []
-
- expectation.append("password:")
- expectation.append(pexpect.EOF)
-
- innerIndex = setupSSHKeys.expect(expectation)
-
- if innerIndex == 0:
- setupSSHKeys.kill(signal.SIGTERM)
- return [1, "None"]
- elif innerIndex == 1:
- setupSSHKeys.kill(signal.SIGTERM)
- return [1, "None"]
-
-
- except pexpect.TIMEOUT, msg:
- logging.writeToFile("Timeout [verifyHostKey]")
- return [0,"Timeout [verifyHostKey]"]
- except pexpect.EOF, msg:
- logging.writeToFile("EOF [verifyHostKey]")
- return [0,"EOF [verifyHostKey]"]
- except BaseException, msg:
- logging.writeToFile(str(msg) + " [verifyHostKey]")
- return [0,str(msg)+" [verifyHostKey]"]
+ res = subprocess.call(cmd)
-print verifyHostKey("23.95.216.56")
\ No newline at end of file
+print verifyHostKey("/home/ssl.cyberpanel.net")
\ No newline at end of file
diff --git a/plogical/virtualHostUtilities.py b/plogical/virtualHostUtilities.py
index f5fd06111..8ceb2fb72 100644
--- a/plogical/virtualHostUtilities.py
+++ b/plogical/virtualHostUtilities.py
@@ -5,6 +5,7 @@ import shutil
import logging
import CyberCPLogFileWriter as logging
import subprocess
+import shlex
class virtualHostUtilities:
@@ -21,13 +22,29 @@ class virtualHostUtilities:
confPath = virtualHostUtilities.Server_root + "/conf/vhosts/"+virtualHostName
completePathToConfigFile = confPath +"/vhost.conf"
+
try:
os.makedirs(path)
+ except OSError,msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able to create directories for virtual host: "+ path+" [createDirectoryForVirtualHost]]")
+ return 0
+
+ try:
os.makedirs(pathHTML)
+ except OSError,msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able to create directories for virtual host "+ pathHTML+" [createDirectoryForVirtualHost]]")
+ return 0
+
+ try:
os.makedirs(pathLogs)
+ except OSError,msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able create to directories for virtual host "+ pathLogs+" [createDirectoryForVirtualHost]]")
+ return 0
+
+ try:
os.makedirs(confPath)
except OSError,msg:
- logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able to directories for virtual host [createDirectoryForVirtualHost]]")
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able create to directories for virtual host "+ confPath+" [createDirectoryForVirtualHost]]")
return 0
@@ -38,25 +55,24 @@ class virtualHostUtilities:
logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForVirtualHost]]")
return 0
- try:
- uid = pwd.getpwnam("lsadm").pw_uid
- gid = grp.getgrnam("lsadm").gr_gid
- os.chown(confPath, uid, gid)
- os.chown(completePathToConfigFile, uid, gid)
+ #try:
- uid = pwd.getpwnam("nobody").pw_uid
- gid = grp.getgrnam("nobody").gr_gid
+ #command = "sudo chown -R nobody:cyberpanel " + completePathToConfigFile
- os.chown("/home",uid,gid)
- os.chown(path, uid, gid)
- os.chown(pathHTML, uid, gid)
- os.chown(pathLogs, uid, gid)
+ #cmd = shlex.split(command)
+
+ #res = subprocess.call(cmd)
+ #command = "sudo chown -R nobody:cyberpanel /home"
+
+ #cmd = shlex.split(command)
+
+ #res = subprocess.call(cmd)
- except BaseException,msg:
- logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForVirtualHost]]")
+ #except BaseException,msg:
+ # logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForVirtualHost]]")
if virtualHostUtilities.perHostVirtualConf(completePathToConfigFile,administratorEmail,phpVersion) == 1:
@@ -237,13 +253,13 @@ class virtualHostUtilities:
os.makedirs(path)
except OSError, msg:
logging.CyberCPLogFileWriter.writeToFile(
- str(msg) + " [Not able to directories for virtual host [createDirectoryForDomain]]")
+ str(msg) + " [Not able create to directories for virtual host [createDirectoryForDomain]]")
try:
os.makedirs(confPath)
except OSError, msg:
logging.CyberCPLogFileWriter.writeToFile(
- str(msg) + " [Not able to directories for virtual host [createDirectoryForDomain]]")
+ str(msg) + " [Not able create to directories for virtual host [createDirectoryForDomain]]")
try:
file = open(completePathToConfigFile, "w+")
@@ -251,20 +267,20 @@ class virtualHostUtilities:
logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForDomain]]")
return 0
- try:
- uid = pwd.getpwnam("lsadm").pw_uid
- gid = grp.getgrnam("lsadm").gr_gid
- os.chown(confPath, uid, gid)
- os.chown(completePathToConfigFile, uid, gid)
+ #try:
+ # uid = pwd.getpwnam("lsadm").pw_uid
+ # gid = grp.getgrnam("lsadm").gr_gid
+ # os.chown(confPath, uid, gid)
+ # os.chown(completePathToConfigFile, uid, gid)
- uid = pwd.getpwnam("nobody").pw_uid
- gid = grp.getgrnam("nobody").gr_gid
+ # uid = pwd.getpwnam("nobody").pw_uid
+ # gid = grp.getgrnam("nobody").gr_gid
- os.chown("/home", uid, gid)
- os.chown(path, uid, gid)
+ # os.chown("/home", uid, gid)
+ # os.chown(path, uid, gid)
- except BaseException, msg:
- logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForDomain]]")
+ #except BaseException, msg:
+ #logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [createDirectoryForDomain]]")
if virtualHostUtilities.perHostDomainConf(path, masterDomain, domain, completePathToConfigFile,
administratorEmail, phpVersion) == 1:
@@ -448,7 +464,6 @@ class virtualHostUtilities:
except BaseException,msg:
logging.CyberCPLogFileWriter.writeToFile(str(msg) + " [Not able to remove virtual host directory from /home continuing..]")
-
try:
confPath = virtualHostUtilities.Server_root + "/conf/vhosts/" + virtualHostName
shutil.rmtree(confPath)
@@ -639,4 +654,28 @@ class virtualHostUtilities:
logging.CyberCPLogFileWriter.writeToFile(
str(msg) + " [UnsuspendVirtualHost]")
return 0
- return 1
\ No newline at end of file
+ return 1
+
+ @staticmethod
+ def permissionControl(path):
+ try:
+ command = 'sudo chown -R cyberpanel:cyberpanel '+path
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ except BaseException,msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg))
+
+ @staticmethod
+ def leaveControl(path):
+ try:
+ command = 'sudo chown -R root:root ' + path
+
+ cmd = shlex.split(command)
+
+ res = subprocess.call(cmd)
+
+ except BaseException, msg:
+ logging.CyberCPLogFileWriter.writeToFile(str(msg))
\ No newline at end of file
diff --git a/websiteFunctions/views.py b/websiteFunctions/views.py
index 692099a80..f299fee93 100644
--- a/websiteFunctions/views.py
+++ b/websiteFunctions/views.py
@@ -279,25 +279,40 @@ def submitWebsiteCreation(request):
ssl = data['ssl']
+ ## tmp change of permissions
+
+
+
if virtualHostUtilities.checkIfVirtualHostExists(domain) == 1:
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
'error_message': "This domain already exists in Litespeed Configurations, first delete the domain to perform sweap."}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
if virtualHostUtilities.createDirectoryForVirtualHost(domain, adminEmail, phpSelection) != 1:
+
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
- 'error_message': "Can not create configurations, see CyberCP main log file."}
+ 'error_message': "Can not create configurations, see CyberPanel main log file. [createDirectoryForVirtualHost]"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
if virtualHostUtilities.createConfigInMainVirtualHostFile(domain) != 1:
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
- 'error_message': "Can not create configurations, see CyberCP main log file."}
+ 'error_message': "Can not create configurations, see CyberPanel main log file."}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -317,14 +332,17 @@ def submitWebsiteCreation(request):
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
'error_message': str(
- ssl_responce) + ", for more information see CyberCP main log file."}
+ ssl_responce) + ", for more information see CyberPanel main log file."}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
- ## zone creation and
+ ## zone creation
try:
newZone = Domains(admin=admin, name=domain, type="NATIVE")
@@ -389,6 +407,9 @@ def submitWebsiteCreation(request):
shutil.copy("/usr/local/CyberCP/index.html", "/home/" + domain + "/public_html/index.html")
+
+
+
data_ret = {'createWebSiteStatus': 1, 'error_message': "None", "existsStatus": 0}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -396,6 +417,9 @@ def submitWebsiteCreation(request):
except BaseException,msg:
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
+
data_ret = {'createWebSiteStatus': 0, 'error_message': str(msg),"existsStatus":0}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -448,9 +472,13 @@ def submitDomainCreation(request):
ssl = data['ssl']
path = data['path']
+ restart = 1
+
+
####### Creation
try:
restore = data['restore']
+ restart = 0
except:
if len(path) > 0:
path = path.lstrip("/")
@@ -462,6 +490,8 @@ def submitDomainCreation(request):
master.adminEmail) != 1:
numberOfWebsites = Websites.objects.count() + ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 0,
'error_message': "Can not create configurations, see CyberCP main log file."}
json_data = json.dumps(data_ret)
@@ -470,26 +500,28 @@ def submitDomainCreation(request):
if virtualHostUtilities.createConfigInMainDomainHostFile(domain, masterDomain) != 1:
numberOfWebsites = Websites.objects.count() + ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 0,
'error_message': "Can not create configurations, see CyberCP main log file."}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
- if ssl == 1:
- installUtilities.reStartOpenLiteSpeed("restart", "ols")
- else:
+ if restart == 1:
installUtilities.reStartLiteSpeed()
if ssl == 1:
ssl_responce = sslUtilities.obtainSSLForADomain(domain, master.adminEmail, path)
if ssl_responce == 1:
sslUtilities.installSSLForDomain(domain)
- installUtilities.reStartLiteSpeed()
+ if restart == 1:
+ installUtilities.reStartLiteSpeed()
else:
numberOfWebsites = Websites.objects.count() + ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
- data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
+
+ data_ret = {"existsStatus": 1, 'createWebSiteStatus': 0,
'error_message': str(
ssl_responce) + ", for more information see CyberCP main log file."}
json_data = json.dumps(data_ret)
@@ -501,6 +533,9 @@ def submitDomainCreation(request):
shutil.copy("/usr/local/CyberCP/index.html", path + "/index.html")
+
+
+
data_ret = {'createWebSiteStatus': 1, 'error_message': "None", "existsStatus": 0}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -508,6 +543,8 @@ def submitDomainCreation(request):
except BaseException, msg:
numberOfWebsites = Websites.objects.count() + ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
data_ret = {'createWebSiteStatus': 0, 'error_message': str(msg), "existsStatus": 0}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -671,9 +708,11 @@ def submitWebsiteDeletion(request):
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
+
virtualHostUtilities.deleteVirtualHostConfigurations(websiteName,numberOfWebsites)
+
delWebsite = Websites.objects.get(domain=websiteName)
databases = Databases.objects.filter(website=delWebsite)
@@ -694,11 +733,16 @@ def submitWebsiteDeletion(request):
installUtilities.reStartLiteSpeed()
+
+
+
data_ret = {'websiteDeleteStatus': 1,'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
except BaseException,msg:
+
+
data_ret = {'websiteDeleteStatus': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -727,11 +771,16 @@ def submitDomainDeletion(request):
installUtilities.reStartLiteSpeed()
+
+
+
data_ret = {'websiteDeleteStatus': 1,'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
except BaseException,msg:
+
+
data_ret = {'websiteDeleteStatus': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -751,6 +800,9 @@ def submitWebsiteStatus(request):
website = Websites.objects.get(domain=websiteName)
+
+
+
if state == "Suspend":
virtualHostUtilities.suspendVirtualHost(websiteName)
installUtilities.reStartLiteSpeed()
@@ -763,11 +815,16 @@ def submitWebsiteStatus(request):
website.save()
+
+
+
data_ret = {'websiteStatus': 1,'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
except BaseException,msg:
+
+
data_ret = {'websiteStatus': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -1018,7 +1075,7 @@ def getDataFromLogFile(request):
if start <= 0:
start = 1
startingAndEnding = "'" + str(start) + "," + str(end) + "p'"
- command = "sed -n " + startingAndEnding + " " + fileName
+ command = "sudo sed -n " + startingAndEnding + " " + fileName
proc = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
data = proc.stdout.read()
else:
@@ -1027,7 +1084,7 @@ def getDataFromLogFile(request):
if start <= 0:
start = 1
startingAndEnding = "'" + str(start) + "," + str(end) + "p'"
- command = "sed -n " + startingAndEnding + " " + fileName
+ command = "sudo sed -n " + startingAndEnding + " " + fileName
proc = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
data = proc.stdout.read()
@@ -1082,7 +1139,7 @@ def fetchErrorLogs(request):
if start <= 0:
start = 1
startingAndEnding = "'" + str(start) + "," + str(end) + "p'"
- command = "sed -n " + startingAndEnding + " " + fileName
+ command = "sudo sed -n " + startingAndEnding + " " + fileName
proc = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
data = proc.stdout.read()
else:
@@ -1091,7 +1148,7 @@ def fetchErrorLogs(request):
if start <= 0:
start = 1
startingAndEnding = "'" + str(start) + "," + str(end) + "p'"
- command = "sed -n " + startingAndEnding + " " + fileName
+ command = "sudo sed -n " + startingAndEnding + " " + fileName
proc = subprocess.Popen(shlex.split(command), stdout=subprocess.PIPE)
data = proc.stdout.read()
@@ -1103,7 +1160,6 @@ def fetchErrorLogs(request):
return HttpResponse(final_json)
-
def installWordpress(request):
try:
val = request.session['userID']
@@ -1116,13 +1172,17 @@ def installWordpress(request):
finalPath = ""
+ ## temporarily changing permission for sshd files
+
+
+ virtualHostUtilities.permissionControl("/home/"+domainName+"/public_html")
+
if home == '0':
path = data['path']
finalPath = "/home/" + domainName + "/public_html/" + path + "/"
else:
finalPath = "/home/" + domainName + "/public_html/"
-
if not os.path.exists(finalPath):
os.makedirs(finalPath)
@@ -1137,8 +1197,9 @@ def installWordpress(request):
## Get wordpress
+
if not os.path.exists("latest.tar.gz"):
- command = 'wget --no-check-certificate http://wordpress.org/latest.tar.gz'
+ command = 'wget --no-check-certificate http://wordpress.org/latest.tar.gz -O latest.tar.gz'
cmd = shlex.split(command)
@@ -1150,6 +1211,7 @@ def installWordpress(request):
res = subprocess.call(cmd)
+
## Get plugin
if not os.path.exists("litespeed-cache.1.1.5.1.zip"):
@@ -1196,7 +1258,7 @@ def installWordpress(request):
if not os.path.exists(homeDir):
os.mkdir(homeDir)
- command = 'chown -R nobody:nobody '+homeDir
+ command = 'chown -R nobody:cyberpanel '+homeDir
cmd = shlex.split(command)
res = subprocess.call(cmd)
@@ -1213,7 +1275,7 @@ def installWordpress(request):
if not os.path.exists(homeDir):
os.mkdir(homeDir)
- command = 'chown -R nobody:nobody ' + homeDir
+ command = 'chown -R nobody:cyberpanel ' + homeDir
cmd = shlex.split(command)
res = subprocess.call(cmd)
data_ret = {'installStatus': 0,
@@ -1232,7 +1294,7 @@ def installWordpress(request):
if not os.path.exists(homeDir):
os.mkdir(homeDir)
- command = 'chown -R nobody:nobody ' + homeDir
+ command = 'chown -R nobody:cyberpanel ' + homeDir
cmd = shlex.split(command)
res = subprocess.call(cmd)
@@ -1260,11 +1322,9 @@ def installWordpress(request):
if items.find("DB_NAME") > -1:
if items.find("database_name_here") > -1:
writeDataToFile.writelines(defDBName)
- print ("database_name_here")
elif items.find("DB_USER") > -1:
if items.find("username_here") > -1:
writeDataToFile.writelines(defDBUser)
- print ("username_here")
elif items.find("DB_PASSWORD") > -1:
writeDataToFile.writelines(defDBPassword)
else:
@@ -1274,7 +1334,7 @@ def installWordpress(request):
os.rename(wpconfigfile, finalPath + 'wp-config.php')
- command = 'chown -R nobody:nobody ' + finalPath
+ command = 'sudo chown -R nobody:cyberpanel ' + "/home/" + domainName + "/public_html/"
cmd = shlex.split(command)
@@ -1291,12 +1351,16 @@ def installWordpress(request):
except BaseException, msg:
# remove the downloaded files
- shutil.rmtree(finalPath)
+ try:
+ shutil.rmtree(finalPath)
+ except:
+ logging.CyberCPLogFileWriter.writeToFile("shutil.rmtree(finalPath)")
+
homeDir = "/home/" + domainName + "/public_html"
if not os.path.exists(homeDir):
os.mkdir(homeDir)
- command = 'chown -R nobody:nobody ' + homeDir
+ command = 'chown -R nobody:cyberpanel ' + homeDir
cmd = shlex.split(command)
res = subprocess.call(cmd)
data_ret = {'installStatus': 0, 'error_message': str(msg)}
@@ -1306,9 +1370,11 @@ def installWordpress(request):
except KeyError, msg:
status = {"installStatus":0,"error":str(msg)}
- logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[getDataFromLogFile]")
+ logging.CyberCPLogFileWriter.writeToFile(str(msg) + "[installWordpress]")
return HttpResponse("Not Logged in as admin")
+
+
def getDataFromConfigFile(request):
try:
val = request.session['userID']
@@ -1318,6 +1384,8 @@ def getDataFromConfigFile(request):
data = json.loads(request.body)
virtualHost = data['virtualHost']
+
+
filePath = installUtilities.Server_root_path + "/conf/vhosts/"+virtualHost+"/vhost.conf"
configData = open(filePath,"r").read()
@@ -1330,6 +1398,7 @@ def getDataFromConfigFile(request):
+
status = {"configstatus":1,"configData":configData}
final_json = json.dumps(status)
@@ -1357,6 +1426,8 @@ def saveConfigsToFile(request):
virtualHost = data['virtualHost']
configData = data['configData']
+
+
filePath = installUtilities.Server_root_path + "/conf/vhosts/"+virtualHost+"/vhost.conf"
vhost = open(filePath,"w")
@@ -1366,6 +1437,9 @@ def saveConfigsToFile(request):
vhost.close()
+
+
+
status = {"configstatus":1,"configData":configData}
final_json = json.dumps(status)
@@ -1393,27 +1467,38 @@ def getRewriteRules(request):
data = json.loads(request.body)
virtualHost = data['virtualHost']
+
+
+
filePath = "/home/"+virtualHost+"/public_html/.htaccess"
try:
rewriteRules = open(filePath,"r").read()
if len(rewriteRules) == 0:
- status = {"rewriteStatus": 1, "error_message": "Rules file is currently empty"}
+
+
+
+ status = {"rewriteStatus": 1, "error_message": "Rules file is currently empty"}
final_json = json.dumps(status)
return HttpResponse(final_json)
+
+
+
status = {"rewriteStatus": 1, "rewriteRules": rewriteRules}
final_json = json.dumps(status)
return HttpResponse(final_json)
except IOError:
+
+
+
status = {"rewriteStatus": 1, "error_message": "none","rewriteRules":""}
final_json = json.dumps(status)
return HttpResponse(final_json)
-
except BaseException, msg:
data_ret = {'rewriteStatus': 0, 'error_message': str(msg)}
json_data = json.dumps(data_ret)
@@ -1436,6 +1521,9 @@ def saveRewriteRules(request):
virtualHost = data['virtualHost']
rewriteRules = data['rewriteRules']
+
+
+
virtualHostUtilities.addRewriteRules(virtualHost)
filePath = "/home/" + virtualHost + "/public_html/.htaccess"
@@ -1447,6 +1535,9 @@ def saveRewriteRules(request):
vhost.close()
+
+
+
status = {"rewriteStatus":1}
final_json = json.dumps(status)
@@ -1477,6 +1568,9 @@ def saveSSL(request):
cert = data['cert']
key = data['key']
+
+
+
pathToStoreSSL = virtualHostUtilities.Server_root + "/conf/vhosts/" + "SSL-" + domain
website = Websites.objects.get(domain=domain)
@@ -1504,6 +1598,9 @@ def saveSSL(request):
website.ssl = 1
website.save()
+
+
+
data_ret = {'sslStatus': 1, 'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -1532,6 +1629,9 @@ def saveSSL(request):
website.ssl = 1
website.save()
+
+
+
data_ret = {'sslStatus': 1, 'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -1572,6 +1672,8 @@ def CreateWebsiteFromBackup(request):
originalFile = "/home/backup/" + data['backupFile']
+
+
if not os.path.exists(originalFile):
dir = data['dir']
path = "/home/backup/transfer-"+str(dir)+"/"+backupFile
@@ -1607,11 +1709,16 @@ def CreateWebsiteFromBackup(request):
check = 0
dbCheck = 0
+
+
+
for items in data:
if check == 0:
if virtualHostUtilities.createDirectoryForVirtualHost(domain, adminEmail, phpSelection) != 1:
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
'error_message': "Can not create configurations, see CyberCP main log file."}
json_data = json.dumps(data_ret)
@@ -1620,13 +1727,13 @@ def CreateWebsiteFromBackup(request):
if virtualHostUtilities.createConfigInMainVirtualHostFile(domain) != 1:
numberOfWebsites = Websites.objects.count()+ChildDomains.objects.count()
virtualHostUtilities.deleteVirtualHostConfigurations(domain, numberOfWebsites)
+
+
data_ret = {"existsStatus": 1, 'createWebSiteStatus': 1,
'error_message': "Can not create configurations, see CyberCP main log file."}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
- installUtilities.reStartLiteSpeed()
-
selectedPackage = Package.objects.get(packageName="Default")
website = Websites(admin=admin, package=selectedPackage, domain=domain, adminEmail=adminEmail,
@@ -1652,6 +1759,9 @@ def CreateWebsiteFromBackup(request):
status.write("Accounts and DBs Created")
status.close()
+
+
+
data_ret = {'createWebSiteStatus': 1, 'error_message': "None", "existsStatus": 0}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)
@@ -1682,6 +1792,7 @@ def changePHP(request):
installUtilities.reStartLiteSpeed()
+
data_ret = {'changePHP': 1,'error_message': "None"}
json_data = json.dumps(data_ret)
return HttpResponse(json_data)