Debian中Oracle权限管理主要涉及用户、文件系统、网络及数据库层面的权限配置,以下是核心方法:
-
用户与组管理
- 创建专用用户组(如
oinstall、dba)和Oracle用户,限制root权限:sudo groupadd -g 54321 oinstall sudo useradd -u 54321 -g oinstall oracle sudo passwd oracle - 通过
usermod修改用户属性,如密码过期策略等。
- 创建专用用户组(如
-
文件系统权限
- 确保Oracle安装目录(如
/u01)和数据目录权限正确:sudo chown -R oracle:oinstall /u01 sudo chmod -R 775 /u01 - 对监听器配置文件(
listener.ora等)设置严格权限:sudo chown oracle:oinstall $ORACLE_HOME/network/admin/*.ora sudo chmod 600 $ORACLE_HOME/network/admin/*.ora
- 确保Oracle安装目录(如
-
环境变量配置
- 在
/etc/profile或用户.bashrc中设置ORACLE_HOME、PATH等变量,确保用户能正确访问Oracle命令:echo "export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1" >> /home/oracle/.bashrc echo "export PATH=\$ORACLE_HOME/bin:\$PATH" >> /home/oracle/.bashrc source /home/oracle/.bashrc
- 在
-
网络与防火墙
- 限制Oracle监听端口(默认1521)的访问,仅允许可信IP:
sudo ufw deny in on ens33 to any port 1521 sudo ufw allow in on ens33 from 192.168.1.0/24 to any port 1521 sudo ufw reload
- 限制Oracle监听端口(默认1521)的访问,仅允许可信IP:
-
数据库权限管理
- 使用SQL*Plus以
SYSDBA身份登录,创建用户并授权:CREATE USER test_user IDENTIFIED BY password; GRANT CONNECT, RESOURCE TO test_user; - 通过
GRANT语句控制用户对表、视图等对象的访问权限。
- 使用SQL*Plus以
-
安全策略强化
- 编辑
/etc/security/limits.d/30-oracle.conf,限制Oracle用户的进程数、文件打开数等资源:oracle soft nproc 16384 oracle hard nproc 16384 oracle soft nofile 65536 oracle hard nofile 65536 - 定期审计数据库日志(如
alert.log),监控异常操作。
- 编辑
参考来源: