Tôi đang cố chạy OpenVPN theo Fedora 19 với selinux (nhắm mục tiêu theo chính sách của selinux) trong chế độ thực thi và tôi đang chạy vào AVC Tôi không hoàn toàn chắc chắn cách xử lý.
Bắt đầu OpenVPN từ dòng lệnh khi root hoạt động tốt, nhưng bắt đầu nó thông qua systemd ( systemctl start openvpn@vpcbridge
, nơi
/etc/openvpn/vpcbridge.conf
tồn tại) dẫn đến:
ERROR: Cannot ioctl TUNSETIFF tap0: Permission denied (errno=13)
Và trong /var/log/audit
:
type=AVC msg=audit(1376412420.435:60): avc: denied { relabelfrom } for
pid=720 comm="openvpn" scontext=system_u:system_r:openvpn_t:s0
tcontext=system_u:system_r:ifconfig_t:s0 tclass=tun_socket
Để tham khảo, đây là cấu hình OpenVPN:
port 1194
user openvpn
dev tap0
proto udp
secret vpcbridge.key
keepalive 10 120
persist-tun
persist-key
Nếu tôi chạy audit2allow
, tôi nhận được một tệp mô-đun trông như thế này:
module openvpn 1.0;
require {
type openvpn_t;
type ifconfig_t;
class tun_socket relabelfrom;
}
#============= openvpn_t ==============
allow openvpn_t ifconfig_t:tun_socket
relabelfrom;
Nhưng tải mà tạo ra một lỗi:
# semodule -i openvpn.pp
libsepol.print_missing_requirements: openvpn's global requirements were
not met: type/attribute openvpn_t (No such file or directory).
libsemanage.semanage_link_sandbox: Link packages failed (No such file or
directory).
semodule: Failed!
Tôi không biết phải làm gì với lỗi này.
Cập nhật : Theo yêu cầu, đầu ra của seinfo -t ...
:
# seinfo -t | grep openvpn
openvpn_tmp_t
openvpn_unconfined_script_exec_t
openvpn_status_t
openvpn_etc_rw_t
openvpn_var_lib_t
openvpn_var_run_t
openvpn_port_t
openvpn_server_packet_t
openvpn_etc_t
openvpn_initrc_exec_t
openvpn_var_log_t
openvpn_unconfined_script_t
openvpn_exec_t
openvpn_t
openvpn_client_packet_t
seinfo -t | grep openvpn
cho chúng tôi? Sẽ thật tốt nếu xem openvpn_t thực sự được xác định.
openvpn_t
được xác định.
openvpn-tun
hay sao?