Fedora CentOSなどLinuxリリース版SELinuxセキュリティ設定問題再考


Fedora CentOSなどLinuxリリース版SELinuxセキュリティ設定問題再考
作者:おじいさん  リリース:2011-12-31 11:37 
 
私は2つのログを書いたことがあります.SELinuxのセキュリティ設定に関する問題です.参考にしてください.
私たちはいったいSELinuxを使うべきですか?
SELINUXの権限について
先日、同僚が現場に行ってお客様にシステムを配置し、RHEL 5.6を組み立てた後、ftpとhttpがつながっていないことに気づいたが、サーバーの起動とサービス状態は正常で、ftpの返却結果は
500 OOPS: cannot change directory:/home/userDir
私は彼に権限を確認させたり、ログインしたユーザーなどを確認させたりしましたが、これらは問題なく、SELinuxの状態はどうですか?彼は開いていると言って、私はこの問題だと知っています.これらのバージョンの後、デフォルトSELinuxはネットワーク操作のローカルファイルシステムを厳格に制御しています.私はこれらのことを言う必要があると思います.
まず2つのコマンド、getseboolとsetsebool、名前から分かるように、これはSELinux関連の構成を設定するスイッチ(ブール値)であり、各スイッチの役割を説明すればよい.// SELinux [root@rhel6 www] # getsebool -a |grep httpd allow_httpd_anon_write --> off allow_httpd_mod_auth_ntlm_winbind --> off allow_httpd_mod_auth_pam --> off allow_httpd_sys_script_anon_write --> off httpd_builtin_scripting --> on httpd_can_check_spam --> off httpd_can_network_connect --> on httpd_can_network_connect_cobbler --> off httpd_can_network_connect_db --> off httpd_can_network_relay --> off httpd_can_sendmail --> off httpd_dbus_avahi --> on httpd_enable_cgi --> on httpd_enable_ftp_server --> off httpd_enable_homedirs --> off httpd_execmem --> off httpd_read_user_content --> off httpd_setrlimit --> off httpd_ssi_exec --> off httpd_tmp_exec --> off httpd_tty_comm --> on httpd_unified --> on httpd_use_cifs --> off httpd_use_gpg --> off httpd_use_nfs --> off
  ftp // Anonymous chcon -R -t public_content_t /var/ftp // chcon -t public_content_rw_t /var/ftp/incoming // allow_ftpd_anon_write setsebool -P allow_ftpd_anon_write=1 // setsebool -P ftp_home_dir 1 // ftp setsebool -P ftpd_is_daemon 1 // SELinux FTP setsebool -P ftpd_disable_trans 1
  {httpd} // setsebool -P allow_httpd_anon_write=1 // setsebool -P allow_httpd_sys_script_anon_write=1 // http cgi setsebool -P httpd_enable_cgi 1 // http setsebool -P httpd_enable_homedirs 1 chcon -R -t httpd_sys_content_t ~user /public_html // http setsebool -P httpd_tty_comm 1 // http setsebool -P httpd_unified 0 // http context setsebool -P httpd_builtin_scripting 0 // http setsebool -P httpd_can_network_connect 1 // suexec setsebool -P httpd_suexec_disable_trans 1 // SELinux httpd setsebool -P httpd_disable_trans 1 service httpd restart
  {named} // setsebool -P named_write_master_zones 1 // SELinux named setsebool -P named_disable_trans 1 service named restart
  {nfs} // nfs setsebool -P nfs_export_all_ro 1 // nfs setsebool -P nfs_export_all_rw 1 // nfs setsebool -P use_nfs_home_dirs 1
  {samba} // chcon -t samba_share_t /directory // setsebool -P allow_smbd_anon_write=1 // samba , setsebool -P samba_enable_home_dirs 1 // samba setsebool -P use_samba_home_dirs 1 // SELinux samba setsebool -P smbd_disable_trans 1 service smb restart
  rsync // rsync chcon -t public_content_t /directories // setsebool -P allow_rsync_anon_write=1 // SELinux rsync setsebool -P rsync_disable_trans 1
  {kerberos} // kerberos setsebool -P allow_kerberos 1 // kadmind krb5kdc setsebool -P krb5kdc_disable_trans 1 service krb5kdc restart setsebool -P kadmind_disable_trans 1 service kadmind restart
  {nis} // nis setsebool -P allow_ypbind 1
これらを見終わったら、SELinuxの設定方法を知っておくべきです.ここにはよく使うものだけがリストされています.
詳細については、以下を参照してください.http://linux.die.net/man/8/setsebool