Files
aaPanel/class_v2/safe_warning_v2/sw_ssh_minclass.py
T
Jack a24f2e23c6 Update to 7.25.0
1. Added Mail Marketing Automation trigger tasks
2. Added Mail Marketing Groups Import, Export, Merge
3. Added Mail Marketing Subscribers to support paste import
4. Added Mail Marketing Template Import Export Duplicate
5. Added Mail server add timed automatic reply
6. Added HTTPS Protection function for Website (disables automatic HTTP to HTTPS redirection when enabled)
7. Optimize Website Interface Button Integration
8. Optimize the response speed of WP Toolkit interface
2025-03-13 17:52:26 +08:00

45 lines
1.8 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
#!/usr/bin/python
# coding: utf-8
# -------------------------------------------------------------------
# aapanel
# -------------------------------------------------------------------
# Copyright (c) 2015-2099 aapanel(http://www.aapanel.com) All rights reserved.
# -------------------------------------------------------------------
# Author: hwliang <hwl@bt.cn>
# -------------------------------------------------------------------
# -------------------------------------------------------------------
# SSH密码复杂度检查
# -------------------------------------------------------------------
# import sys, os
# os.chdir('/www/server/panel')
# sys.path.append("class/")
import os, sys, re, public
_title = 'SSH password complexity check'
_version = 1.0 # 版本
_ps = "SSH password complexity check" # 描述
_level = 2 # 风险级别: 1.提示(低) 2.警告(中) 3.危险(高)
_date = '2022-08-10' # 最后更新时间
_ignore = os.path.exists("data/warning/ignore/sw_ssh_minclass.pl")
_tips = [
"【/etc/security/pwquality.conf】 Set password complexity to require 3 or 4 types of characters, such as lowercase letters, uppercase letters, numbers, and special characters. like",
"minclass=3",
]
_help = ''
_remind = 'This scheme strengthens the complexity of the server login password and reduces the risk of being successfully exploded. '
def check_run():
try:
p_file = '/etc/security/pwquality.conf'
p_body = public.readFile(p_file)
if not p_body: return True, 'Risk-free'
tmp = re.findall(r"\s*minclass\s+=\s+(.+)", p_body, re.M)
if not tmp: return True, 'Risk-free'
minlen = tmp[0].strip()
if int(minlen) <3:
return False, '【%s】set the minclass setting to 3 or 4 in the file' % p_file
return True, 'Risk-free'
except:
return True, 'Risk-free'