Tc @s5ddklZddklZlZdddYZededdged d d ged ed ddgedededdgedd d gdhdd6dd6ededdddgedd d geded dged"d d#ged$ed%dged'ed(ed)dged+d,d-ged.ed/dged1ed2ed3dged5ed6ed7dged9ed:ed;ddged>d,d?gd d ged@edAddddgedDd,d?gedEedFddgedHedIedJdgedLedMedNdgedPedQedRddgedUedVedWdgedYedZed[dged]d,d^ged_ed`gedad,d^gedbedcddddgedhediedjdgedld,dmgednedodgedqedredsdddgedvedwedxdgedzed{ed|dged~gZdZdZ dZ dS(i(t_(t getPortIDtgetServiceNamet_ServicecBseZdghddZRS(cCsC||_||_||_||_||_||_||_dS(N(tkeytnametportst descriptiontmodulest destinationtdefault(tselfRRRRRR R ((s0/usr/share/system-config-firewall/fw_services.pyt__init__s      N(t__name__t __module__tNoneR (((s0/usr/share/system-config-firewall/fw_services.pyRss ipp-clientsNetwork Printing Client (IPP)t631tudpsThe Internet Printing Protocol (IPP) is used for distributed printing. IPP (over udp) provides the ability to get information about a printer (e.g. capability and status) and to control printer jobs. If you plan to use a remote network printer via cups, do not disable this option.R tdesktoptippsNetwork Printing Server (IPP)ttcpsThe Internet Printing Protocol (IPP) is used for distributed printing. IPP (over tcp) provides the ability to share printers over the network. Enable this option if you plan to share printers via cups over the network.tmdnssMulticast DNS (mDNS)t5353smDNS provides the ability to use DNS programming interfaces, packet formats and operating semantics in a small network without a conventional DNS server. If you plan to use Avahi, do not disable this option.R s 224.0.0.251tipv4sff02::fbtipv6tipsectIPsectahtespis/Internet Protocol Security (IPsec) incorporates security for network transmissions directly into the Internet Protocol (IP). IPsec provides methods for both encrypting data and authentication for the host or network it sends to. If you plan to use a vpnc server or FreeS/WAN, do not disable this option.tsshtSSHt22s=Secure Shell (SSH) is a protocol for logging into and executing commands on remote machines. It provides secure encrypted communications. If you plan on accessing your machine remotely via SSH over a firewalled interface, enable this option. You need the openssh-server package installed for this option to be useful.tserverthttps WWW (HTTP)t80sHTTP is the protocol used to serve Web pages. If you plan to make your Web server publicly available, enable this option. This option is not required for viewing pages locally or developing Web pages.tftptFTPt21sFTP is a protocol used for remote file transfer. If you plan to make your FTP server publicly available, enable this option. You need the vsftpd package installed for this option to be useful.Rtnf_conntrack_ftptnfstNFS4t2049sThe NFS4 protocol is used to share files via TCP networking. You will need to have the NFS tools installed and properly configure your NFS server for this option to be useful.thttpssSecure WWW (HTTPS)t443sHTTPS is a modified HTTP used to serve Web pages when security is important. Examples are sites that require logins like stores or web mail. This option is not required for viewing pages locally or developing Web pages. You need the httpd package installed for this option to be useful.tsmtps Mail (SMTP)t25sThis option allows incoming SMTP mail delivery. If you need to allow remote hosts to connect directly to your machine to deliver mail, enable this option. You do not need to enable this if you collect your mail from your ISP's server by POP3 or IMAP, or if you use a tool such as fetchmail. Note that an improperly configured SMTP server can allow remote machines to use your server to send spam.s samba-clients Samba Clientt137t138sThis option allows you to access Windows file and printer sharing networks. You need the samba-client package installed for this option to be useful.tnf_conntrack_netbios_nstsambatSambat139t445sThis option allows you to access and participate in Windows file and printer sharing networks. You need the samba package installed for this option to be useful.tdnstDNSt53sThe Domain Name System (DNS) is used to provide and request host and domain names. Enable this option, if you plan to provide a domain name service (e.g. with bind).timapss IMAP over SSLt993sThe Internet Message Access Protocol over SSL (IMAPs) allows a local client to access email on a remote server in a secure way. If you plan to provide a IMAP over SSL service (e.g. with dovecot), enable this option.tpop3ssPOP-3 over SSLt995sThe Post Office Protocol version 3 (POP3) is a protocol to retrieve email from a remote server over a TCP/IP connection. Enable this option, if you plan to provide a POP3 service (e.g. with dovecot).tradiustRADIUSt1812t1813sThe Remote Authentication Dial In User Service (RADIUS) is a protocol for user authentication over networks. It is mostly used for modem, DSL or wireless user authentication. If you plan to provide a RADIUS service (e.g. with freeradius), enable this option.topenvpntOpenVPNt1194sOpenVPN is a virtual private network (VPN) solution. It is used to create encrypted point-to-point tunnels between computers. If you plan to provide a VPN service, enable this option.ttftptTFTPt69sThe Trivial File Transfer Protocol (TFTP) is a protocol used to transfer files to and from a remote machine in s simple way. It is normally used only for booting diskless workstations and also to transfer data in the Preboot eXecution Environment (PXE).tnf_conntrack_tftps tftp-clients TFTP ClientsThis option allows you to access Trivial File Transfer Protocol (TFTP) servers. You need the tftp package installed for this option to be useful.s cluster-suitesRed Hat Cluster Suiteiiig+iHRsThis option allows you to use the Red Hat Cluster Suite. Ports are opened for openais, ricci and dlm. You need the Red Hat Cluster Suite installed for this option to be useful.s amanda-clientsAmanda Backup Clienti`'sThe Amanda backup client option allows you to connect to a Amanda backup and archiving server. You need the amanda-client package installed for this option to be useful.tnf_conntrack_amandas bacula-clients Bacula Clienti#sThis option allows a Bacula server to connect to the local machine to schedule backups. You need the bacula-client package installed for this option to be useful.tbaculatBaculai#i#syBacula is a network backup solution. Enable this option, if you plan to provide Bacula backup, file and storage services.tlibvirtsVirtual Machine Managementi}@sEnable this option if you want to allow remote virtual machine management with SASL authentication and encryption (digest-md5 passwords or GSSAPI/Kerberos). The libvirtd service is needed for this option to be useful.s libvirt-tlss Virtual Machine Management (TLS)i@sEnable this option if you want to allow remote virtual machine management with TLS encryption, x509 certificates and optional SASL authentication. The libvirtd service is needed for this option to be useful.cCs*x#tD]}|i|jo|SqWdS(N(t service_listRR(Rtx((s0/usr/share/system-config-firewall/fw_services.pytgetByKeys  cCs*x#tD]}|i|jo|SqWdS(N(RKRR(RRL((s0/usr/share/system-config-firewall/fw_services.pyt getByNames  cCs}xvtD]n}t|}t||}||f|ijp2t||f|ijp||f|ijo|SqWdS(N(RKRRRtstrR(tporttprotoRLtidR((s0/usr/share/system-config-firewall/fw_services.pyt getByPorts 2 N((RR(RR(RR(RR(NR(NR(iR(RR(R"R(R%R(R)R(R+R(R-R(R.R(R/R(R.R(R/R(R3R(R4R(R7R(R7R(R9R(R;R(R>R(R?R(RBR(RER(iR(iR(ig+R(iHRR(i`'R(i#R(i#R(i#R(i#R(i}@R(i@R( t fw_configRt fw_functionsRRRRRKRMRNRS(((s0/usr/share/system-config-firewall/fw_services.pyts