2018년 3월 7일 수요일

리눅스 centos7 DNS 서버 구축

일단 centos7 을 dns 서버로 설치하였다.
dns 서버로 설치하였으므로 이미 bind* 패키지가 설치되어 있다.

** 가정
dns서버는 ns1.aaaa.com 111.111.111.111 이라하고
이 dns서버에서 처리할 도메인(zone)은 aaaa.com bbbb.co.kr 이라고 가정한다.

** bind 패키지 설치

** hostname 영구 설정
hostnamectl set-hostname ns1.aaaa.com

이 파일 수정하면 /etc/resolv.conf 가 바뀌더라.

hostname ns1.aaaa.com 이렇게만 해버리면 다음 부팅 때 원복된다 그랬나?


** /etc/named.conf 수정

listen-on port 53 { any; };
allow-query { any; };

자세한 내용은 인터넷에서

** /etc/named.rfc1912.zones 수정. 도메인(zone) 설정
이 파일은 /etc/named.conf 하단에 보면 include 설정이 되어 있다.
이 파일의 맨 마지막에 설정하고자 하는 zone 을 설정한다.

zone 파일(forward. 도메인으로 ip 찾아가기)만 설정하고
rev 파일(reverse. ip 로 도메인 찾아가기)은 설정할 필요가 없단다.

zone "aaaa.com" IN {
     type master;
     file "aaaa.com.zone";
     allow-update { none; };
};

zone "bbbb.co.kr" IN {
     type master;
     file "bbbb.co.kr.zone";
     allow-update { none; };
};


** vi /var/named/aaaa.com.zone
$TTL 값을 짧게 설정해서 당분간은 변경내용이 바로바로 등록되도록 한다.
$TTL 10M; default 1D
한국통신 dns 보관 기간. 너무 작으면 dns 서버 과부하 나므로 주의하란다.

https://www.linux.co.kr/home/lecture/?leccode=374

@       IN SOA  ns1.aaaa.com.        webmaster.mailserver1.com. (
                                        2018030801       ; serial
                                        10M     ; refresh
                                        1H      ; retry (default 1D)
                                        1W      ; expire
                                        3H )    ; minimum
                IN NS ns1.aaaa.com.
                IN MX 10 mail.mailserver1.com.
                IN A 222.222.222.111
        mail    IN A 222.222.222.111
        blog    IN A 222.222.222.111
        music   IN A 222.222.222.333
        www     IN A 222.222.222.333
        ftp     IN A 222.222.222.333

** vi /var/named/bbbb.co.kr.zone

@       IN SOA  ns1.aaaa.com.        webmaster.mailserver1.com. (
                                        2018030801       ; serial
                                        10M     ; refresh
                                        1H      ; retry (default 1D)
                                        1W      ; expire
                                        3H )    ; minimum
        IN NS ns1.aaaa.com.
        IN NS ns2.aaaa.com.
        IN MX 10 mail.mailserver1.com.
        IN A 333.333.333.111
ftp     IN A 444.444.444.333
aaa     IN A 444.444.444.333
bbb     IN A 444.444.444.333


** zone 파일 설명
소유자.그룹이 root.named 이어야 한다.
chown root.named /var/named/aaaa.com.zone
;(세미콜론은 주석)
@ 은 /etc/named.rfc1912.zones 파일에서 설정했던
zone "aaaa.com" IN {
 "aaaa.com" 요부분이다. 실제로는 aaaa.com. 이다. 마지막 .(점) 주의

예를 들어

** zone 파일 설명(SOA 파트)
@       IN SOA  ns1.aaaa.com.        webmaster.mailserver1.com. (
에서
@ 는 도메인명(zone) 이고 
SOA 는 이 zone 의 시작 소유권이며
ns1.aaaa.com. (마지막 점 주의)는 primary nameserver 를 적고
webmaster.mailserver1.com. 는 관리자 이메일이다. webmaster@mailserver1.com 이지만 @ 는 다른 용도로 쓰이므로 . 으로 데체

SOA 나머지 부분은 인터넷에서 찾아보세요

** zone 파일 설명(NS 파트)
        IN NS ns1.aaaa.com.
        IN NS ns2.aaaa.com.

이 zone(도메인, bbbb.co.kr)의 1차 2차 nameserver 설정

** zone 파일 설명(MX 파트)
        IN MX 10 mail.mailserver1.com.
인터넷에서 찾아보세요

** zone 파일 설명(A 파트)
        IN A 333.333.333.111 ;bbbb.co.kr 로 접속하면 333.333.333.111 로 가라
ftp     IN A 444.444.444.333 ;ftp.bbbb.co.kr 로 접속하면 444.444.444.333 로 가라
aaa     IN A 444.444.444.333 ;aaa.bbbb.co.kr 로 접속하면 444.444.444.333 로 가라
bbb     IN A 444.444.444.333 ;bbb.bbbb.co.kr 로 접속하면 444.444.444.333 로 가라



** zone 파일 자세한 설명

https://www.linux.co.kr/home/lecture/?leccode=374



** 파일 검증
named-checkconf /etc/named.conf
named-checkconf -z /etc/named.conf
named-checkzone aaa.bbbb.co.kr /var/named/bbbb.co.kr.zone

** named (dns 데몬) 재시작
service named restart
service named start
service named stop
service named status -l


** dns 서버는 53 포트를 사용하므로 아래와 같이 53 포트를 tcp udp 모두 열어주어야 한다.
# firewall-cmd --permanent --zone=public --add-port=53/tcp
# firewall-cmd --permanent --zone=public --add-port=53/udp
또는
# firewall-cmd --permanent --zone=public --add-service=dns


# firewall-cmd --reload

** 내 로컬 윈도우에서 테스트하기
제어판 network 설정 ip4 속성에서 dns 를 111.111.111.111(예제) 로 바꾸고
브라우저 새로 열어 http://aaa.bbbb.co.kr 접속해보기

nlslookup - 111.111.111.111


2018년 3월 5일 월요일

centos oracle 설치

http://cubenuri.tistory.com/190

http://puttico.tistory.com/121?category=601216






  • centos 7 설치
    • centos7 minimal iso 파일을 rufus 프로그램을 이용하여 usb 에 설치
    • usb 부트로 설치
    • 파티션 세부 설치

  • 필요 라이브러리 설치
    • yum -y install compat-libgcc-296 compat-libstdc++-29 compat-libstdc++-33 gcc gcc-c++ glibc-deve ...
  • 시스템 파라미터 수정
    • sudo vi /usr/lib/sysctl.d/00-system.conf
    • # Disable netfilter on bridges.
    • #net.bridge.bridge-nf-call-ip6tables = 0
    • #net.bridge.bridge-nf-call-iptables = 0
    • #net.bridge.bridge-nf-call-arptables = 0
    • vi /etc/sysctl.conf
  • 시스템 파라미터 적용
    • sysctl -p
  • 파일 핸들러 수 조정
    • vi /etc/security/limits.conf
  • 64bit 리눅스 설정
    • vi /etc/pam.d/login
  • GUI 라이브러리 설치
    • yum install tigervnc-server.x86_64
    • yum install pixman pixman-devel libXfont
    • (???) yum -y groupinstall "Server with GUI"
  • java 설치
    • (설치가능 확인)yum list java*jdk-devel
    • (설치)yum install java-1.8.0-openjdk-devel.x86_64
    • (설치 확인)rpm -qa java*jdk-devel
    • vi /etc/profile...export JAVA_HOME=...
  • dba 그룹 oracle 유저 생성

    • visudo -f /etc/sudoers
    • oracle ALL=(ALL:ALL) NOPASSWD:ALL
  • .bash_profile 설정
    • ...
    • export LANG=C

  • 기타
    • vi .../product/11.2.0/db_1/ctx/lib/ins_ctx.mk
      •     -static $(LINK_CTXHX) $(CTXHXOBJ) $(INSO_LINK) /usr/lib64/stdc.a
    • vi .../product/11.2.0/db_1/sysman/lib/ins_emagent.mk
      •     $(MK_EMAGENT_NMECTL) -lnnz11
  • xming putty, putty registry 변경하여 cp949
  • unzip
    • unzip ./linux.x64_11gR2_database_1of2.zip
    • unzip ./linux.x64_11gR2_database_2of2.zip
  • .../runInstaller
    • Install database software only
    • product languages 는 english 만 하자
    • installation location 은 product/11.2.0/db_1
    • (root 로 실행).../orainventory/orainstRoot.sh
    • (root 로 실행).../db_1/root.sh
  • (리스너 설정)
    • netca
  • (데이터베이스 설정)
    • dbca
  • (자동실행 설정)
    • vi /etc/oratab
    • ...

----------------------------------------------
(현재 locale 확인)

  • echo $LANG
(설정 가능한 locale 확인)
  • locale -a
(locale 변경)
  • vi /etc/sysconfig/i18n
  • export LANG="ko_KR.euckr"
(한국어 로케일 설정 서버에서 콘솔 작업시 한글 출력 깨지면
  • export LANG=C
(기타)
  • vi /usr/share/locale/locale.alias
  • 그러므로 export LANG="ko_KR" 해도 됨...

2018년 2월 27일 화요일

오라클 팁

** 오라클 버전 정보 확인

SELECT * FROM v$version WHERE banner LIKE 'Oracle%';

SELECT * FROM v$version;

SELECT * FROM PRODUCT_COMPONENT_VERSION;

워드 팁

** 워드 종료시 아래 메시지 나올때 조치 방법
"실행하려는 기능에 매크로 또는 매크로 언어 지원이 필요한 내용이 들어 있습니다."

제어판 > 프로그램 및 기능 > Microsoft Office Professional Plus 2007 > 오른 마우스 클릭 > 변경 선택 > 설치 옵션 > Office 공유 기능 > Visual Basic for Applications  내 컴퓨터에서 실행 선택하고 설치

하면 된다.

2018년 2월 22일 목요일

리눅스 명령어 모음



** 계정 생성
(우분투, SUSE의 경우, -m 홈디렉토리 생성, -s /bin/bash 쉘 환경설정)

  • useradd 계정명 -m -s /bin/bash

(CentOS 등 레드햇 계열)

  • useradd 계정명

(그룹 지정하여 만들기)
  • useradd 계정명 -G 그룹명
** 비밀번호 변경

  • echo '패스워드' | passwd --stdin 계정명
** 그룹 지정
  • usermod -G 그룹명 계정명
** 그룹 보기
  • groups
  • cat /etc/group
** 파일, 디렉토리 소유권 변경(change owner)
-R 옵션은 하위 포함하여 변경

  • chown 사용자명 대상
  • chown :그룹 대상
  • chown 사용자명:그룹 대상
  • chown -R 사용자명:그룹 대상

** 파일, 디렉토리 권한 변경(change mod)

  • chmod a+x 대상
  • chmod +x 대상
  • chmod a-wx 대상
  • chmod -wx 대상
  • chmod u+rw,g-r 대상
  • chmod ug=r 대상
  • chmod 755 대상

** 사용자 변환(- 주면 환경변수까지 적용, switch user)
  • su 사용자명
  • su - 사용자명
  • whoami
  • logout
  • exit
** 현재 계정에서 root 권한으로 명령어 실행(sudo, superuser do)
/etc/sudoers 파일에 지정된 사용자만 sudo 명령 사용 할 수 있다.
visudo -f /etc/sudoers 로 편집해야 한다.
아래와 같이 계정이나 그룹 추가하면 해당 계정, 그룹에서 sudo 명령 사용가능

user01 ALL=(ALL:ALL) NOPASSWD:ALL
%group01 ALL=(ALL:ALL) ALL

(비번 없이 사용하기)
사용자명 ALL=NOPASSWD: ALL
(비번 없이 특정명령만 사용하기)
사용자명 ALL=NOPASSWD: 명령어1, 명령어2

** sudo, su, su - 차이점
sudo 현재 계정에서 다른 계정의 권한만 빌린다.
sudo -i 다른 계정으로 로그인
su 다른 계정으로 전환
su - 다른 계정으로 전환 + ㄱ그 계정의 환경변수 적용

(su를 sudo처럼 사용)
su -c 'command'

(sudo를 su처럼 사용)
sudo -i


** 리눅스 버전 확인
  • grep . /etc/*-release
  • cat /etc/*-release | uniq
(레드헷 계열)
  • rpm -qa *-release
** 환경변수 설정
vi ~/.bash_profile
export
export 변수명=변수값
echo $변수명
export 변수명=$변수명:변수값

** 디렉토리 용량 확인(du)


** 기타

nmap localhost
netstat -tnlp
find / -name '검색어'
ps -ef | grep java
hostname
cat /etc/hosts
ifconfig
ping localhost
curl 'http://xxx.xxx.xxx.xxx'
cd ~
vi ~/.bash_profile
echo $HOME
export(설정 출력할 수 있다.)
1024 하위 포트는 root 이외 권한으로 사용불가

** cpu 사용율
mpstat | tail -1 | awk '{print 100-$11}'

** 디스크 용량
df -h
df -P

** 메모리 사용율
sar -r 1
free
free -m
free -g
top -n1 | grep Mem:
cat /proc/meminfo | grep Mem

** service systemctl 비교

https://unix.stackexchange.com/questions/170068/service-vs-systemctl-scripts-which-to-use





인기글

추천 게시물

윈도우에서 오라클 11g 삭제하기

* 참조 및 출처 https://wickedmagic.tistory.com/407 https://wookoa.tistory.com/304 * 윈도우에서 오라클 11g 삭제하기 > 서비스에서 오라클 관련 서비스 모두 종료 > Un...