CentOS7 시스템 로그 수집 (journald) 및 방화벽 (firewalld)

5061 단어 centos7CentOS

소개



CentOS7의 시스템 로그 수집 (journald)과 방화벽 (firewalld)에 대해 정리해 보았습니다.

systemd-journald



journald란?



systemd 환경에서 표준적으로 제공되는 로그 관리 서비스입니다. 정식 명칭은, 아래와 같은 「systemd-journald.service」입니다.

참조
h tp // 에나이 00. 하테나 bぉg. 코m/엔트리/20141130/1417310904

journal 사용법



시스템 로그 수집



/var/log 이하에 어플리케이션으로부터의 로그가 출력되고 있습니다만, 이것은 어플리케이션으로부터 직접 출력되고 있는 것과 어플리케이션내에서 syslog() 함수를 사용해 rsyslogd 프로세스에 건네주어 출력하고 있다 (syslog 메시지) 물건이 있습니다.

rsyslogd란?


  • 원래 syslog (rsyslogd의 이전 버전)가 각 응용 프로그램에서 로그를 수신하고 파일에 기록했습니다. 로그를 다른 서버로 보낼 수도 있습니다.
  • CentOS6에서 syslog의 후속으로 고기능 rsyslog가 채용되고있다. 역할은 동일

  • CentOS7에서 시스템 로그 수집



    journald의 등장


  • 응용 프로그램 → jornald → jornaldDB
  • 디폴트의 장소는 var/run/log/jounral이므로 OS 재기동이 없어진다. 위치는 바뀐다

  • 프로세스의 표준 출력/오류 출력도 journald가 수신합니다
  • 응용 프로그램 → jornald → rsyslogd
  • rsyslogd가 지금까지 로그 파일에 씁니다


  • 방화벽으로 패킷 필터링


  • firewalled 명령은 INPUT 체인의 패킷 필터링 규칙을 제어합니다.
  • NAT 및 포워드 설정은 별도
  • firewalled가 내부에서 netfilter를 사용하고 있습니다.
  • netfileter가 체인 (체크 위치, input, forward 등 7 개소)에서 패킷 필터링


  • CentOS 7 시스템 관리 가이드 systemd/NetworkManager/Firewalld 철저한 공략 더 체인



    존이란?


  • 네트워크 인터페이스를 용도 등에 의해 그룹화한 것.
  • 각 존에는 역할을 결정하고, 그 역할에 있던 서비스 등이 처음부터 허가되고 있다
  • 기본적으로 모든 인터페이스는 공용 영역에 속합니다
  • .

    ICMP



    기본적으로 허용

    현재 활성 영역 확인



    기본값은 public에 속합니다.
    
    firewall-cmd --get-active-zones
    public
      interfaces: ens192
    
    
    firewall-cmd --get-default-zone
    public
    

    firewall-cmd



    firewall-cmd 명령을 사용하여 수행

    영속과 런타임



    firewall-cmd --add-service=http
    firewall-cmd --permanent --add-service=http
    firewall-cmd --runtime-to-permanent

    영역을 지정하지 않으면 기본 영역에 설정됩니다.

    서비스



    사용 가능한 서비스 목록
    # firewall-cmd --get-service
    RH-Satellite-6 amanda-client amanda-k5-client amqp amqps apcupsd audit bacula bacula-client bgp bitcoin bitcoin-rpc bitcoin-testnet bitcoin-testnet-rpc ceph ceph-mon cfengine condor-collector ctdb dhcp dhcpv6 dhcpv6-client distcc dns docker-registry docker-swarm dropbox-lansync elasticsearch etcd-client etcd-server finger freeipa-ldap freeipa-ldaps freeipa-replication freeipa-trust ftp ganglia-client ganglia-master git gre high-availability http https imap imaps ipp ipp-client ipsec irc ircs iscsi-target isns jenkins kadmin kerberos kibana klogin kpasswd kprop kshell ldap ldaps libvirt libvirt-tls lightning-network llmnr managesieve matrix mdns minidlna mongodb mosh mountd mqtt mqtt-tls ms-wbt mssql murmur mysql nfs nfs3 nmea-0183 nrpe ntp nut openvpn ovirt-imageio ovirt-storageconsole ovirt-vmconsole plex pmcd pmproxy pmwebapi pmwebapis pop3 pop3s postgresql privoxy proxy-dhcp ptp pulseaudio puppetmaster quassel radius redis rpc-bind rsh rsyncd rtsp salt-master samba samba-client samba-dc sane sip sips slp smtp smtp-submission smtps snmp snmptrap spideroak-lansync squid ssh steam-streaming svdrp svn syncthing syncthing-gui synergy syslog syslog-tls telnet tftp tftp-client tinc tor-socks transmission-client upnp-client vdsm vnc-server wbem-http wbem-https wsman wsmans xdmcp xmpp-bosh xmpp-client xmpp-local xmpp-server zabbix-agent zabbix-server
    

    서비스 정의

    포트와 프로토콜이 지정됨
    # cat /usr/lib/firewalld/services/http.xml
    <?xml version="1.0" encoding="utf-8"?>
    <service>
      <short>WWW (HTTP)</short>
      <description>HTTP 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.</description>
      <port protocol="tcp" port="80"/>
    </service>
    

    추가
    # firewall-cmd --add-service=http --permanent
    success
    
    

    확인
    # firewall-cmd --list-all
    public (active)
      target: default
      icmp-block-inversion: no
      interfaces: enp0s25
      sources:
      services: dhcpv6-client http ssh
    

    포트



    서비스에 등록되지 않은 서비스(포트)

    좋은 웹페이지 즐겨찾기