turnserver.te 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. policy_module(turnserver, 0.1.10)
  2. ########################################
  3. #
  4. # Declarations
  5. #
  6. attribute_role turnserver_roles;
  7. type turnserver_t;
  8. type turnserver_exec_t;
  9. init_daemon_domain(turnserver_t, turnserver_exec_t)
  10. type turnserver_etc_t;
  11. files_config_file(turnserver_etc_t)
  12. type turnserver_initrc_exec_t;
  13. init_script_file(turnserver_initrc_exec_t)
  14. type turnserver_var_run_t;
  15. files_pid_file(turnserver_var_run_t)
  16. type turnserver_var_log_t;
  17. logging_log_file(turnserver_var_log_t)
  18. type turnserver_var_t;
  19. files_type(turnserver_var_t)
  20. type turnserver_tmp_t;
  21. files_tmp_file(turnserver_tmp_t)
  22. type turnserver_unit_t;
  23. init_unit_file(turnserver_unit_t)
  24. ########################################
  25. #
  26. # Local policy
  27. #
  28. allow turnserver_t self:tcp_socket { bind create setopt listen };
  29. allow turnserver_t self:udp_socket { getopt create setopt bind };
  30. allow turnserver_t self:capability { setuid setgid };
  31. allow turnserver_t self:process signal;
  32. allow turnserver_t self:tcp_socket accept;
  33. allow turnserver_t self:rawip_socket { bind create listen setopt };
  34. manage_dirs_pattern(turnserver_t, turnserver_var_t, turnserver_var_t)
  35. manage_files_pattern(turnserver_t, turnserver_var_t, turnserver_var_t)
  36. type_transition turnserver_t turnserver_var_t:file turnserver_var_t;
  37. read_files_pattern(turnserver_t, turnserver_etc_t, turnserver_etc_t)
  38. manage_files_pattern(turnserver_t, turnserver_var_run_t, turnserver_var_run_t)
  39. files_pid_filetrans(turnserver_t, turnserver_var_run_t, file)
  40. manage_files_pattern(turnserver_t, turnserver_var_log_t, turnserver_var_log_t)
  41. logging_log_filetrans(turnserver_t, turnserver_var_log_t, file)
  42. manage_dirs_pattern(turnserver_t,turnserver_tmp_t,turnserver_tmp_t)
  43. manage_files_pattern(turnserver_t,turnserver_tmp_t,turnserver_tmp_t)
  44. files_tmp_filetrans(turnserver_t,turnserver_tmp_t, file)
  45. dev_read_sysfs(turnserver_t)
  46. corenet_tcp_bind_all_unreserved_ports(turnserver_t)
  47. corenet_udp_bind_all_unreserved_ports(turnserver_t)
  48. corenet_tcp_bind_generic_node(turnserver_t)
  49. corenet_udp_bind_generic_node(turnserver_t)
  50. corenet_raw_bind_generic_node(turnserver_t)
  51. miscfiles_read_localization(turnserver_t)
  52. dev_read_urand(turnserver_t)
  53. auth_use_nsswitch(turnserver_t)
  54. kernel_request_load_module(turnserver_t)
  55. optional_policy(`
  56. gen_require(`
  57. type port_t;
  58. ')
  59. allow turnserver_t port_t:rawip_socket name_bind;
  60. ')