Skip to content
Eternal Center

Eternal Center

  • Single-Node (单节点)
    • System (系统)
    • Service (服务)
    • Database (数据库)
    • Container (容器)
    • Virtualization (虚拟化)
  • Multi-Node (多节点)
    • Cluster (集群)
    • Big Data (大数据)
    • Cloud Computing (云计算)
    • Batch Processing (批量处理)
  • Approach (方式方法)
    • Languages (语言)
    • Ideas (思路)
    • Programing (编程)
    • Project (项目)
  • Eternity (永恒)
    • News (消息)
    • Creations (创作)
    • Classics (经典)
    • Legends (传说)
    • Chronicle (编年史)
    • FNIOS (宇宙公民开源学院)
Posted on June 17, 2022November 22, 2024 by Mingyu Zhu

[内容] Linux sudo 命令安全的加强

  • 内容一:修改 sudoers 配置文件的方法
  • 内容二:设置 sudoers 配置文件的参数
    • 2.1 指定命令路径
    • 2.2 设置不需要终端就可以执行 sudo 命令
    • 2.3 设置存储 sudo 命令日志的文件
    • 2.4 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令
    • 2.5 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令,同时可以对应地记录所有用户的输入和输出
      • 2.5.1 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令,同时可以对应地记录所有用户的输入和输出
      • 2.5.2 自定义记录所有用户的输入和输出参数存储会话序列号的文件
    • 2.6 设置执行 sudo 命令时进行提示
      • 2.6.1 设置执行 sudo 命令时进行提示
      • 2.6.2 设置执行 sudo 命令时,存放自定义提示内容的文件
    • 2.7 设置自定义执行 sudo 命令后输错密码的提示
    • 2.8 设置执行 sudo 命令时可以输错命令的次数
    • 2.9 增加执行 sudo 命令时,系统输入密码时的等待时间
    • 2.10 当用户执行 sudo 命令输错密码后羞辱用户

内容一:修改 sudoers 配置文件的方法

# vim /etc/sudoers

或者:

# visudo

内容二:设置 sudoers 配置文件的参数

2.1 指定命令路径

Defaults secure_path="<command>"

(补充:例如这里的 值可以是 /usr/local/sbin)

2.2 设置不需要终端就可以执行 sudo 命令

Defaults !requiretty

或者:

# Defaults requiretty

(补充:如果不设置此参数则直接远程执行 sudo 命令时可能会报错 “you must have a tty to run sudo”)

2.3 设置存储 sudo 命令日志的文件

Defaults logfile="<file>"

(补充:这里的 <file> 值一般会设置为 /var/log/sudo.log)

2.4 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令

Defaults use_pty

2.5 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令,同时可以对应地记录所有用户的输入和输出

2.5.1 让 sudo 使用伪终端执行命令,避免后台进程使用 sudo 命令,同时可以对应地记录所有用户的输入和输出
Defaults log_input, log_output 

(补充:如果存在会话序列号,则会话序列号会默认存储在 /var/log/sudo-io 文件中)

2.5.2 自定义记录所有用户的输入和输出参数存储会话序列号的文件
iolog_dir=<file>

2.6 设置执行 sudo 命令时进行提示

2.6.1 设置执行 sudo 命令时进行提示
Defaults lecture="<value>"

(补充:这里的 <value> 值可以是 always (一直提示),once (用户首次执行 sudo 命令时提示),never (从来不提示))

2.6.2 设置执行 sudo 命令时,存放自定义提示内容的文件
Defaults lecture_file="<file>"

(补充:如果没有此参数的话,则会提示默认内容)

2.7 设置自定义执行 sudo 命令后输错密码的提示

Defaults badpass_message="<prompt>"

2.8 设置执行 sudo 命令时可以输错命令的次数

Defaults passwd_tries=<time>

(补充:默认值为 3)

2.9 增加执行 sudo 命令时,系统输入密码时的等待时间

Defaults passwd_timeout=<time>

2.10 当用户执行 sudo 命令输错密码后羞辱用户

Defaults insults
CategoriesChinese Post (中文帖子), System (系统), System Login Security (系统登录安全), System Network & System Security & System Log (系统网络 & 系统安全 & 系统日志), System Operation & System Setting & System Software (系统操作 & 系统设置 & 系统软件), System Privilege (系统权限), System Security (系统安全), System Setting (系统设置), System Setting Other Contents (系统设置其它内容), System Setting Others (系统设置其它), System User & System Privilege (系统用户 & 系统权限)

Post navigation

Previous PostPrevious [步骤] Linux sudo 日志的开启
Next PostNext [内容] Linux 路径变量 ($PATH) 的设置

Aspiration (愿景):

Everyone can achieve self-achievement and self-happiness fairly

每个人都能公平地实现自我成就和自我幸福

Logo (徽标):

Additional Information (其他信息):

About     Manual     Clone     Contact
Disclaimer     Friendly Links     Donation

关于     手册     克隆     联系
免责声明     友情链接     捐赠

Search Inside Website (站内搜索)

Search Outside Website (站外搜索):

Google         Wikipedia         Bing

Eternal URL (永恒网址):

https://eternity.eternalcenter.com Will be last access method / 将是最后的访问方式

Proudly powered by LNMP Proudly powered by WordPress