# 서비스 - [[k8s service]] # mysql ## 로그 파일 관리 * 에러로그 : 서버 실행시 에러를 기록하는 로그파일 * 일반적 로그 : mysql에 접근하는 사용자와 그에 관련된 파일에 대한 관리 * # /usr/local/mysql/bin/safe_mysql --log & * 업데이트 로그 : 디비 테이블이 변경될 때마다 기록 * # /usr/local/mysql/bin/safe_mysql --log-update & # FTP ## FTP 모드 * active 모드 * passive 모드 ## FTP 포트번호 * ftp 모드에는 크게 active 모드와 passive 모드가 있다. passive 모드에서 사용하고자 포트 번호를 서버에서 클라이언트 쪽으로 서버 IP 정보와 포트번호를 (1.1.1.1, 4, 131) 보냈다. 포트 번호는 몇 번인가? * 4 x 256 + 131 = 1024 + 131 = ''1155'' ### vsftpd.conf * session\_support=`YES` → wtmp에 로그 남기기 YES로 해야만 last 명령어로 접속 여부 확인 가능 * xferlog\_file=/var/log/vsftpd.log → 파일 전송 로그파일명 * xferlog\_enable=`YES` → 파일 전송 로그를 남길 것인지 여부 * xferlog\_std\_format=`YES` → xferlog 표준 포맷으로 로그를 남길지 여부 xferlog 표준 포맷은 로그인, 디렉토리 생성 등의 로그를 남기지 않지만 vsftpd 스타일 로그는 이를 포함한 보다 상세한 로그를 남긴다. P # MAIL * SMTP(Simple Mail Transfer Protocol) * 전자우편을 보내고 받는데 기본적으로 사용되는 TCP/IP 프로토콜 * MTA(Mail Transfer Agent) * 인터넷상의 하나의 메일 전송 에이전트로 컴퓨터에서 다른 컴퓨터로 전자메일을 전송하는 서버용 프로그램 * MUA(Mail Use Agent) * 사용자가 전자우편을 송수신 할 때 사용하는 클라이언트 프로그램 * MDA(Mail Delivery Agent) * 도착한 메일을 사용자에게 보내기 위한 프로토콜 ## Sendmail * sendmail.cf 에서 SMTP 데몬 옵션을 모두 허용해 줄 수 있다. 이는 sendmail.cf의 256 라인에 있는 Addr=127.0.0.1 을 ''0.0.0.0'' 형태로 수정해 주면 모두 허용한다는 의미이다. * 레드햇 계열인 CentOS에서 메일과 관련하여 서비스를 사용하려면 기본적인 Sendmail과 pop3와 imap 패키지를 포함하는 ''dovecot''패키지가 설치되어 있어야 한다. * dovecat 패키지가 설치되어 있는지 확인하는 방법 * rpm -qa | grep dovecot ## 스팸방지 설정 * 192.168.100 네트워크 허용 * spam.com 은 거부 localhost.localdomain RELAY localhost RELAY (호스트와 RELAY를 Tab키로 띄워준다) 127.0.0.1 RELAY 192.168.100 RELAY spam.com REJECT * Sendmail에서 위와 같이 릴레이 허용과 거절을 설정한 후에는 반드시 다음과 같은 명령어로 DB 파일(access.db)을 만들어 준다. * # makemap hash /etc/mail/access < /etc/mail/access #### access control option 부분 ^ OK | 지정된 호스트나 사용자가 보낸 메일은 다른 설정 rule이 거부하는 경우에도 받아들인다. | ^ RELAY | 지정된 호스트에 대해 SMTP 메일 중계 역할을 한다. 즉, 지정된 도메인에 있는 사용자에게 오는 메일을 받고, 그 도메인에 있는 사용자가 서버를 통해 메일을 보낼 수 있도록 한다. 지정된 도메인에서 오는 메일은 다른 룰이 거부하는 경우에도 받아들인다. | ^ REJECT | 지정된 도메인과 관련된 모든 메일(수신/발신)을 거부 한다. | ^ DISCARD | $#dicard mailer를 사용해 메시지를 완저닣 폐기한다. 메시지를 받기는 하지만 배달은 하지 않고, 발신자에게 폐기사실을 알리지 않기 때문에, 발신자는 배달되었다고 생각하게 된다.| ^ 501 | 지정된 user@host와 발신자의 주소가 전체 혹은 부분적으로 일치할 경우 이메일을 받지 않는다. 뒤의 예는 return mail에 포함될 에러 메시지 구문을 지정하여 넣을 수 있다. | ^ 553 | 발신자의 주소에 호스트명이 없을 경우 메일을 받지 않는다. | ^ 550 | 지정된 도메인과 관련된 메일을 받지 않는다. | # SNMP (Simple Network Management Protocol) SNMP 프로토콜은 비동기식 프로토콜인 UDP상에서 동작하므로 TCP처럼 연결을 맺는 과정 자체가 없고, 메시지 대부분이 단순한 요청과 응답에 의해 처리되기 때문에 4가지 연산만 수행한다. * ''GET'' * 장비의 상태 및 가동시간 등의 정보를 읽어 들인다. 특정 장비의 정보를 읽으려면 메시지 송신자로서 관리자는 그 장비를 표시하는 작은 프로그램인 에이전트에 조회를 한다. * ''GET Next'' * 정보가 계층적 구조를 가지므로 관리자가 장비에 조회를 해서 해당 트리보다 하위 정보를 얻도록 한다. 해당 하위 객체들까지 모두 요청할 때 사용된다. * ''Set'' * 장비의 MIB 값을 조작하여 장비를 제어한다. 관리자를 요청을 보내 다시 초기화시키거나 프로그램에 따라 다시 재구성한다. 즉 관리자(Manager)에서 에이전트(Agent)로 특정값을 설정할 때 사용한다. * ''Trap'' * 에이전트(Agent)에서 통보해야 할 어떤 정보가 발생하였을 때 관리자(Manager)에게 해당 상황을 알리기 위해 사용한다. 다른 요청들이 동기적 요청이라면 이것은 비동기적 사건을 알리기 위하여 사용이 된다. # DNS ## DNSSEC (DNS Security Extensions) 국제인터넷표준화기구인 IETF에서 "데이터 위0변주 침해공격"에 취약한 DNS 의 문제점을 근본적으로 보완 개선하기 위해 1990년대 후반부터 논의를 시작하여 2005년경 완성된 국제표준기술로, 다양한 시험을 거쳐 2010년에는 최상위 DNS 인 '루트 DNS' 에도 적용되어 전세계적으로 확대되고 있다. ## DNS 질의 타입 ^ 질의 타입 ^ 설명 ^ | ANY | 도메인에 등록된 모든 현황 | | SOA(Start of Authority) | Resource Record의 type | | A(address) | 인터넷 호스트 주소 | | NS(name server) | 도메인에 대한 네임서버 | | PTR(domain name pointer) | IP address에 대한 호스트명 | | MX(mail exchanger) | 메일을 최종적으로 수신할 컴퓨터 호스트 이름 |