'Linux/CentOS'에 해당되는 글 19건

  1. 2015.04.09 Tips of CentOS 7
  2. 2015.04.09 CentOS 6.6 minimal 로 DHCP server 구축
  3. 2015.04.07 Cent OS 6.6 에서 nmail 로 메일서버 구축하기
  4. 2015.04.06 DNS master & slave server 만들기
  5. 2015.04.06 서버 시간 동기화(ntpd)
  6. 2015.03.28 CentOS 6.6 single mode(싱글모드) 진입방법 - root의 password(비밀번호) 분실 시
  7. 2015.03.28 CentOS 6.6 minimal에 Wordpress 설치하기!
  8. 2015.03.27 막강한 부트로더, GRUB
  9. 2015.03.27 CentOS6 Network Interface Card 설정

Tips of CentOS 7

|


systemctl [option] [데몬명]


[option]

start      ;  service start [데몬명]

stop      ;  service stop [데몬명]

reload   ;

restart   ;   service restart [데몬명]

status    ;  service status [데몬명]

enable   ;  chkconfig on [데몬명]

disable  ;  chkconfig off [데몬명]


실행중인 service list 보기

    # systemctl -t service 


enabled, disabled 된 service, socket, target 보기

    # systemctl list-unit-files


일부 SysV services 상태 확인. 6 와 마찬가지로 chkconfig off 가능.

# chkconfig --list




# ip addr show        ; ifconfig




커널이 업데이트 되면서 ; 의 역할을 + 으로 표시.

# find / -name abc -exec ls -al {} ;

        => # find / -name abc -exec ls -al {} +




And


CentOS 6.6 minimal 로 DHCP server 구축

|


출처 : http://attiadmin.guyweb.co.kr/server/dhcp.html




0. Cent OS minimal 설치




1. 필요 PKG 설치


dhcp server 설치 되어있는지 확인


# rpm -qa | grep dhcp

=> Client인 dhcp.common만 설치되어있다.


dhcp PKG 설치 & 서버는 시간이 중요하기 때문에 ntp도 설치

# yum install -y dhcp* ntp




2. NIC (Network Interface Card) 확인


먼저는 이더넷 카드에서 멀티캐스팅이 지원되는지 확인해야한다.

ifconfig 명령어를 이용하여 내가 사용하고자 하는 카드에 UP BROADCAST RUNNING MULTICAST 가 있는지 확인


# ifconfig


미지원 시 google 통해 해결... -_-ㅋ;;





3. dhcp 환경설정


dhcp 설정을 위해 설정 파일에 들어가보자.

# vi /etc/dhcp/dhcpd.conf

      1 #

      2 # DHCP Server Configuration file.

      3 #   see /usr/share/doc/dhcp*/dhcpd.conf.sample

      4 #   see 'man 5 dhcpd.conf'

      5 #


/usr/share/doc/dhcp*/dhcpd.conf.sample 파일을 참조하거나 man 5 dhcpd.conf 를 참조하면 될듯하다.

(minimal 설치의 경우 man 파일도 없다. man 부터 설치)

# yum install man

# man 5 dhcpd.conf


매뉴얼 본 뒤 먼저 샘플 파일을 /etc/dhcp/ 로 복사 (나의 경우 dhcp의 버전은 4.1.1)

# cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/


이제 샘플 파일을 수정해보자. 아래 내용 이외의 것은 지우거나 주석처리했다.

# vi /etc/dhcp/dhcpd.conf.sample

#ddns-update-style interim;                       # 왜 사용하는지 이유를 모르기에 일단 주석 처리

#ignore client-updates;

#......................

# 아래 subnet {} 에 묶이지 않는 부분은 기본 설정. 각 subnet 마다 특정한 값으로 재설정 가능

#option domain-name "example.org";                                                 # 네임서버를 도메인으로 찾을 경우 사용

option domain-name-servers 168.126.63.1, 168.126.63.2, 8.8.8.8;      # 네임서버, 도메인도 가능

option subnet-mask 255.255.255.0;                                                   # 서브넷 마스크

option routers 20.20.20.254;                                                              # Gate Way Address

option broadcast-address 20.20.20.255;                                             # Broadcast addrestt

default-lease-time 600;                                                                     # 할당된 ip주소를 가질 수 있는 시간

max-lease-time 7200;                                                                       # 할당 받은 ip 주소를 가지고 있을 수 있는 최대 시간

#..............................

# Client에게 할당할 네트워크 주소 및 netmask

subnet 20.20.20.0 netmask 255.255.255.0 {

  range dynamic-bootp 20.20.20.1 20.20.20.253;                                 # 주소를 할당해 줄 범위

# 위에서 설정한 기본 옵션과 다르게 설정 가능

#  default-lease-time 600;

#  max-lease-time 7200;

  # mac 주소 - 고정 ip  설정

  #host ns {

#        hardware ethernet xx:xx:xx:xx:xx:xx;

#        fixed-address 20.20.20.x;

# }

}

#...................................

# 세세하게, 혹은 추가로 더 나눌 수도 있다.

#subnet 10.5.5.0 netmask 255.255.255.224 {

#  range 10.5.5.26 10.5.5.30;

#  option domain-name-servers ns1.internal.example.org;

#  option domain-name "internal.example.org";

#  option routers 10.5.5.1;

#  option broadcast-address 10.5.5.31;

#}



설정한 설정 파일을 실제 설정 파일로 덮어쓰기.

# cp /etc/dhcp/dhcpd.conf.sample /etc/dhcp/dhcpd.conf



dhcp 요청을 받아 들일 인터페이스 설정

# vi /etc/sysconfig/dhcpd

# Command line options here

DHCPDARGS=eth1




4. dhcp 서버 실행


dhcp 및 ntp 서비스 시작 & 리눅스 부팅 시 자동 실행되도록 설정

# service dhcpd.start

# service ntpd start

# chkconfig dhcpd on

# chkconfig ntpd on



임대 정보 확인

# cat /var/lib/dhcpd/dhcpd.leases


※ dhcp server는 udp 67 port를, client는 udp 68 port를 사용한다.




5. test


dhcp server 와 같은 네트워크 카드에 CentOS dhcp client (라고 해봤자 minimal) 설치.

dhcp 로 주소 잘 받아 오는 것 확인했다~!





[Trouble Shooting]


설정 도중 network 를 시작하는 도중 start fail 을 겪었다.

그 이유는 Cent OS NIC Priority 에 관한 것 때문이라고 하며, 1개의 server 에는 1개의 gateway 만 설정되어있어야 한다.

출처 : https://www.centos.org/forums/viewtopic.php?t=39436





[Memo]


Hyper-V 의 network 설정을 내부 network로, 즉 외부와의 통신이 두절되게 만들었는데

이러한 두절된 통신에 NAT 설정을 추가로 하면 여기에서도 외부로 통신이 가능하다.

그것에 대해 나중에 도전할 예정인데 관련 글들을 메모한다.


Cent OS dhcp & nat

http://blog.pages.kr/311

http://blog.naver.com/brown00/80095329275

     => http://cdral.net/754


구체적인(?) 설명

http://blog.naver.com/dlrud2539/220203979671



Windows dhcp & nat

http://blog.pages.kr/312




'Linux > CentOS' 카테고리의 다른 글

CentOS 7 시간설정 및 Time Zone 변경  (0) 2015.04.09
Tips of CentOS 7  (0) 2015.04.09
Cent OS 6.6 에서 nmail 로 메일서버 구축하기  (0) 2015.04.07
DNS master & slave server 만들기  (0) 2015.04.06
서버 시간 동기화(ntpd)  (0) 2015.04.06
And


Cent OS 6.6 에서 nmail 로 메일서버 구축하기

|


이 글에선 무료 메일 솔루션인 nmail을 통해 Cent OS를 메일서버로 활용 해보고자 한다.

nmail은 개인 및 비영리 단체에 대하여 무료로 사용할 수 있으며 영리목적으로는 30일의 테스트 용도 외엔 사용이 금지되어있다.


이 글에서는 Cent OS 6.6 minimal 버전 및 nmail-php-2.6.11_utf8 으로 진행하였다.





1. Cent OS 6.6 minimal 버전으로 설치.


각자 Real Machine 이나 Virtual Machine 에 Cent OS 6.6 을 minimal 버전으로 설치한다.

나의 경우는 Windows Server 2012 에 Hyper-V 라는 Virtual Machine 을 이용하여 설치하였다.

설치 시 사용할 언어는 English 로 설정해도 상관 없으나 키보드는 Korean 을 선택할 것을 추천한다.





2. Cent OS Nework 설정


[Tip]


vi 는 문서 편집 위한 프로그램이며, 실행 시 :se nu 를 하면 줄 번호가 생긴다.

i 를 입력하면 insert 모드, 즉 쓰기 모드가 시작되고 저장 후 종료를 원할 때엔 esc를 누른 뒤 :wq를 하면 된다.



필요 없는 내용은 지우고 메일서버에서 사용할 고정ip 등의 기본 네트워크 설정을 한다.

나의 경우는 개인적인 DNS 서버로 사용중인 DNS 서버가 있어 DNS1에 넣었다.

NETMASK 는 안적어도 ip에 따라 알아서 잡는다. 특별한 NETMASK를 사용 시 NETMASK=255.255.255.192 등과 같이 넣으면 된다.


# vi /etc/sysconfig/network-scripts/ifcfg-eth0

      1 DEVICE=eth0

      2 HWADDR=00:15:5D:64:E6:0E

      3 TYPE=Ethernet

      4 UUID=f66662d1-779f-49f7-a3d9-c3cf3daa69d0

      5 ONBOOT=yes

      6 BOOTPROTO=static

      7 IPADDR=192.168.1.10

      8 GATEWAY=192.168.1.254

      9 DNS1=192.168.1.20

     10 DNS2=168.126.63.1

     11 DOMAIN=mail.yourdomain.com


지정한 네트워크 정보 설정을 위해 네트워크 재시작

# service network restart


이 후 작업은 putty 등의 ssh 프로그램으로 원격 접속하여 사용할 것을 추천한다.

주의할 것은 설정에서 문자열  형식이 UTF-8 로 되어있지 않으면 UTF-8로 바꿔야 한다.

(그렇지 않으면 한글이 깨져 나올 수 있다.)

특히 putty를 사용하면 좋은 점은 웹 페이지에서 명령어를 복사한 뒤 putty에서 오른클릭 하면 붙여넣기가 된다는 것이다.

또한 putty 상에서 드래그를 하여 영역 선택하면 그 부분은 자동적으로 클립보드에 복사된다.





3. 필요 패키지 설치


필요 패키지 설치를 위해 yum 진행한다. 조금 시간이 걸린다.

# yum install -y httpd* php* mysql* ntp zip unzip wget


httpd* : Apache 관련 패키지

php* : php 관련 패키지

mysql* : mysql 관련 패키지

ntp : 서버 시간 동기화 패키지

zip, unzip : nmail 설치 시 필요한 패키지

wget : nmail 설치 파일 다운로드를 위한 패키지





4. Apache 설정


설정 및 관리의 편의성 때문에 메일 서버는 Virtual Machine 을 사용해서라도 단독으로 따로 돌리길 권장한다.

굳이 기존 서버에 같이 돌리겠다고 한다면 아래 Apache 설정은 달라질 것이다.

개인의 편의에 따라 아래 설정은 얼마든지 변경될 수 있다.


# vi /etc/httpd/conf/httpd.conf

     44 ServerTokens PROD

    262 ServerAdmin admin@yourdomain.com

    277 ServerName mail.yourdomain.com:80

    293 DocumentRoot "/home/nmail2/nmail"

    318 <Directory "/home/nmail2/nmail">

    760 #AddDefaultCharset UTF-8





5. php 설정


# vi /etc/php.ini

    229 short_open_tag = On





6. mysql 설정


중간에 your_password 부분에 입력하는 password 는 추 후 nmail 설치 시 입력해야 하니 기억하자.


# service mysqld restart

# mysql -u root -p mysql

Enter Password:    (초기 비밀번호는 없다. 엔터치면 진입 됨.)

mysql> update user set password=password('your_password') where user='root';

mysql> flush privileges;

mysql> exit


# vi /etc/my.cnf

      7 max_allowed_packet=64M


# service mysqld restart





7. nmail 다운로드 및 설치


# wget http://www.passkorea.net/nmailphp/nmail-php-linux-utf8.tgz

# tar xvfz nmail-php-linux-utf8.tgz

# tar xvfz nmail-php-2.6.11_utf8.tgz

# php nmail-php-2.6.11_utf8_install.php


text로 진행되는 설치 화면 중 사용자가 입력을 해야하는 부분만 발췌하였다.

이 글만 보면 뭔지 이해가 안가겠지만 위에서부터 같이 따라오는 사람은 이해할 수 있을 것이다.


- 지금 SELinux 를 비활성화(disabled)하시겠습까? [Y/n] : y


위 Nmail 라이센스 규정에 동의하십니까? [y/N] : y


  : yourdomain.com


입력하신 도메인을 사용하시겠습니까? [Y/n] : y


  [/home/nmail2] :    (엔터를 누른다)


  :     (본인이 nmail 관리 시 사용할 비밀번호 입력)

  :     (한번 더 입력)


  [localhost] :    (엔터를 누른다)


  :     (mysql 설정 시 입력했던 password 입력)


위 DNS 목록을 사용하시겠습니까? [Y/n] : y


  위 목록에서 실제 사용중인 설정파일의 번호를 입력하여 주십시오. [1-1] : 1


위 정보가 정확합니까? [Y/n] : y


 : 2047    (대용량 첨부, 웹하드 업로드시 허용할 최대 업로드 용량, 단위 : M)


# service httpd restart


# php nmail-php-2.6.11_utf8_install.php


  위 실행파일이 맞습니까? [Y/n] : y


----------------- 설치 완료 -----------------





8. 설치된 패키지 설정


필요 데몬 재시작

# service httpd restart

# service mysqld restart

# service ntpd restart


필요 데몬 시스템 재부팅 시 자동 실행되도록 설정

# chkconfig httpd on

# chkconfig mysqld on

# chkconfig ntpd on


편의성을 위해 방화벽은 끈다.

# service iptables stop

# service ip6tables stop

# chkconfig iptables off

# chkconfig ip6tables off





9. 웹 페이지 접속 및 사용자 생성하여 사용


같은 네트워크 상에 있는 pc에서 이제 메일서버의 ip주소를 웹브라우저에 입력하면 메일서버를 사용할 수 있다.

외부 망에서 접속하는 방법은 사용자의 네트워크 망 구조에 따라 다르기 때문에 생략한다.


기본 관리자 계정은 postmaster 이며 설치 중간에 입력한 password를 이용하여 접속한다.

로그인하면 후 좌측 하단에 있는 관리자메뉴를 통해 추가 회원 관리를 할 수 있다.


내부에서 외부로의 메일 송신은 바로 가능하지만 외부에서 내부로의 메일 수신은 되지 않는다.

이 것이 되기 위해선 먼저 도메인이 있어야 하며 도메인 관리 업체에 메일 관련 정보를 등록하는 등의 절차가 필요하다.



이렇게 Cent OS 에서의 nmail을 이용한 메일서버 구축에 대한 설명은 마무리 한다.

 


 

 

10. 외부 메일 수신 설정 (2015.01.12추가)

 

Windows 서버도 메일 수신이 되었으니 당연히 외부 메일 수신이 될 것이라 생각했는데 안됬다.

알아본 결과 Ceont OS 에 postfix 라는 메일 관련 데몬이 이미 돌아가고 있기 때문.

 

# chkconfig postfix off

 

이제 시스템 리부팅 한 뒤 진행하면 된다.

 

(포트 포워딩이 필요한 환경이라면 25, 110번 포트를 포트 포워딩 해주어야 한다.)


 


And


DNS master & slave server 만들기

|


참고 : http://www.server-world.info/en/note?os=CentOS_6&p=dns&f=6

         + @



주 DNS 서버 및 보조 DNS 서버를 만들어봤다.

추가 및 변동된 부분만 추려 기재한다.




1. 주 DNS 서버 및 보조 DNS 서버에 관련 PKG 설치


# yum install bind*




2. 주 DNS 서버 측 설정


# vi /etc/named.conf

     11         listen-on port 53 { any; };

     12         listen-on-v6 port 53 { any; };

     17         allow-query     { any; };

     18         allow-transfer  { 보조DNS서버ip; };

     19         recursion no;


# vi /etc/named.rfc1912.zones

주 DNS 서버 도메인

     44 zone "dns.com" IN {

     45         type master;

파일 이름 변경 가능

     46         file "dns.z";

     47         allow-update { none; };

     48 };

     49

주 DNS 서버 ip의 네트워크 부분 ip

     50 zone "1.168.192.in-addr.arpa" IN {

     51         type master;

     52         file "dns.r";

     53         allow-update { none; };

     54 };

     55

보조 DNS 서버 도메인

     56 zone "sedns.com" IN {

     57         type master;

     58         file "sedns.z";

     59         allow-update { none; };

     60 };


# vi /var/named/dns.z

      1 $TTL 1D

      2 @       IN      SOA     ns.dns.com. root.dns.com.(

      3                         2014122301

      4                         3H

      5                         15M

      6                         1W

      7                         1D)

      8            IN      NS      ns.dns.com.

      9            IN      NS      ns.sedns.com.

     10

     11            IN      A       192.168.1.224

도메인의  host 부분

     12 ns        IN      A       192.168.1.224

     13 www     IN      A       192.168.1.224

     14 ftp        IN      CNAME   dns.com.


# vi /var/named/dns.r

      1 $TTL 1D

      2 @       IN      SOA     ns.dns.com. root.dns.com.(

      3                         2014122301

      4                         3H

      5                         15M

      6                         1W

      7                         1D)

      8           IN      NS      ns.dns.com.

      9           IN      NS      ns.sedns.com.

     10          IN      A       192.168.1.224

     11

주 DNS 서버 도메인

     12 224     IN      PTR     dns.com.

     13 224     IN      PTR     ns.dns.com.

     14 224     IN      PTR     www.dns.com.

보조 DNS 서버 도메인. 주 DNS 서버 도메인과 같은 네트워크 대역대라 파일 1개에 묶었음

     15 222     IN      PTR     sedns.com.

     16 222     IN      PTR     ns.sedns.com.

     17 222     IN      PTR     www.sedns.com.


# vi /var/named/sedns.z

      1 $TTL 1D

      2 @       IN      SOA     ns.dns.com. root.dns.com.(

      3                         2014122301

      4                         3H

      5                         15M

      6                         1W

      7                         1D)

      8            IN      NS      ns.dns.com.

      9            IN      NS      ns.sedns.com.

     10

     11            IN      A       192.168.1.222

     12 ns        IN      A       192.168.1.222

     13 www     IN      A       192.168.1.222


원할한 운영을 위한 권한 및 소유권 설정

# chmod 660 /var/named/dns* /var/named/min*

# chown .named /var/named/dns* /var/named/min*


데몬 재시작 및 시작프로그램에 등록

# /etc/rc.d/init.d/named restart

# chkconfig named on





3. 보조 DNS 서버 설정


# vi /etc/named.conf

     11         listen-on port 53 { any; };

     12         listen-on-v6 port 53 { any; };

     17         allow-query     { any; };

     18         recursion no;


# vi /etc/named.rfc1912.zones

     43 zone "dns.com" IN {

보조 DNS 서버의 성격 기술

     44         type slave;

     45         masters { 주DNS서버ip; };

     46         file "slaves/dns.z";

     47         notify no;

     48 };

     49

     50 zone "1.168.192.in-addr.arpa" IN {

     51         type slave;

     52         masters { 주DNS서버ip; };

     53         file "slaves/dns.r";

     54         notify no;

     55 };

     56

     57 zone "minimal.com" IN {

     58         type slave;

     59         masters { 주DNS서버ip; };

     60         file "slaves/sedns.z";

     61         notify no;

     62 };


데몬 재시작 및 시작프로그램에 등록

# /etc/rc.d/init.d/named restart

# chkconfig named on





4. 확인


각 서버에서 nslookup 을 통해 본인이 지정한 도메인 및 ip를 넣어서 정상 작동하는지 확인.

특히 보조 DNS 서버에서는 /var/named/slaves/ 에 제대로 파일들이 들어왔는지 확인


만약 잘 안되었다면 각 서버에서 아래의 명령어를 통해 서버 셋팅 적용해보길.


# rndc reload

# /etc/rc.d/init.d/named restart




And


서버 시간 동기화(ntpd)

|


출처 : http://www.server-world.info/en/note?os=CentOS_6&p=ntp&f=1

         http://webdir.tistory.com/120




1. 시간 동기화 패키지(ntp) 설치


# yum install ntp





2. 패지키 실행 및 자동실행 설정


실행

# service ntpd start


부팅 시 자동 실행되도록 설정

# chkconfig ntpd on


설정값 확인 - 동기화까지 수분의 시간이 걸린다.

# ntpq -p

     remote           refid      st t when poll reach   delay   offset  jitter

==============================================================================

+send.mx.cdnetwo 204.123.2.5      2 u    7   64    1   12.894   11.159   2.440

-211.39.136.4       204.123.2.5      2 u    7   64    1   13.739  -16.242   1.642

*211.233.84.186    204.123.2.5      2 u    7   64    1   11.972    0.499   1.980

+mail.funix.net      211.233.40.78    3 u    7   64    1   13.691    4.842   1.984


맨 앞에 * 이 붙어있으면 동기화 중인 것.





3. (Advanced) ntp 서버 설정


# vi /etc/ntp.conf

     22 server 0.centos.pool.ntp.org iburst

     23 server 1.centos.pool.ntp.org iburst

     24 server 2.centos.pool.ntp.org iburst

     25 server 3.centos.pool.ntp.org iburst


server 로 시작하는 위의 줄을 삭제하거나 맨 앞에 #으로 주석처리 한 뒤 26번줄 부터 원하는 ntp 서버를 입력하면 원하는 서버를 통해 직접 서버 시간을 설정할 수 있다.


ex)

server kr.pool.ntp.org

server time.bora.net

server time.kornet.net




And


CentOS 6.6 single mode(싱글모드) 진입방법 - root의 password(비밀번호) 분실 시

|


싱글모드는 root의 패스워드를 분실했을 때 이용할 수 있다.


나의 경우는 갑자기 root 패스워드가 먹히질 않아 인터넷 검색을 통해 진행했는데

싱글모드로 root 패스워드 변경 후 로그인 해보니... 최근 로그인 흔적에 중국발 ip가 적혀있었다.

개인 공부용 서버로 중요한건 아무 것도 없었지만 소름......;;;



먼저는 원격으로는 진행되지 않고 직접 접근할 수 있는 환경이 되어야한다.



1. 리눅스 재부팅





2. 위 화면이 나올 때 얼른 아무 키나 눌러 아래 화면으로 진입한다.





3. 위 화면처럼 첫번째에 놓고 e 를 눌러 아래 화면으로 진입한다.





4. 2번째 줄인 kernel 에서 다시 한번 e 를 누른다. 그러면 아래 화면이 뜬다.





5. 여기에서 quiet 뒤에 아래 처럼 single 을 입력한다.

   (single 대신 1을 입력해도 된다.)





6. Enter 를 치면 아래 화면으로 나온다.





7. 역시나 2번째에 커서를 놓고 이번에는 b 키를 누른다.

   그러면 root 계정으로 로그인이 된다.





8. 그림에서 보는 것처럼 passwd 명령어를 통해 비밀번호를 바꿀 수 있다.




'Linux > CentOS' 카테고리의 다른 글

DNS master & slave server 만들기  (0) 2015.04.06
서버 시간 동기화(ntpd)  (0) 2015.04.06
CentOS 6.6 minimal에 Wordpress 설치하기!  (0) 2015.03.28
막강한 부트로더, GRUB  (0) 2015.03.27
CentOS6 Network Interface Card 설정  (0) 2015.03.27
And


CentOS 6.6 minimal에 Wordpress 설치하기!

|


1. CentOS 6.6 minimal로 설치.


설치 시 시간은 Seoul, hostname은 내가 사용할 홈페이지 주소로 적는다.




2. SELinux 비활성화


SELinux를 비활성화 하더라도 보안에 큰 문제는 없으므로 아래처럼 비활성화 한다.


# vi /etc/sysconfig/selinux

  SELINUX=enabled -> SELINUX=disabled





3. 방화벽 설정


minimal 설치 시 방화벽(iptables)은 작동하지 않고 있으며, 사용을 원한다면 아래처럼 진행


# iptables -X

# iptables -F

# iptables -A INPUT -p tcp -dport 80 -j ACCEPT

# iptables -A INPUT -p tcp -dport 25 -j ACCEPT

# iptables -A INPUT -p tcp -dport 20 -j ACCEPT

# iptables -A INPUT -p tcp -dport 21 -j ACCEPT

# iptables -A INPUT -p tcp -dport 22 -j ACCEPT

# chkconfig iptables on





4. 필요 패키지 설치 및 실행


1) 패키지 설치


# yum install -y ntp mailx sendmail httpd mysql-server php php-mysql php-gd php-ldap php-imap wget


ntp : 시간 동기화

mailx, sendmail : 메일 전송

httpd : 웹서버

mysql* : Database

php* : php

wget : 외부 다운로드



2) 시스템 부팅 시 자동 실행 설정


# chkconfig ntpd on

# chkconfig sendmail on

# chkconfig httpd on

# chkconfig mysqld on





5. Hostname 설정


설치 도중 hostname 설정을 제대로 하지 않았다면 아래 두 파일에서 호스트네임을 수정


/etc/hosts

/etc/sysconfig/network





6. 재부팅


여태껏 한 여러 설정들이 제대로 작동하려면 재부팅이 필요하다.


# reboot





7. Wordpress 설치파일 셋팅


1) 다운로드 및 압축해제


https://ko.wordpress.org/ 에서 최신버전 wordpress 다운로드 주소를 알아낸다. (.tar.gz 으로)


ex) 4.1.1 버젼 다운로드 및 압축해제

# wget https://ko.wordpress.org/wordpress-4.1.1-ko_KR.tar.gz

# tar xvfz wordpress-4.1.1-ko_KR.tar.gz



2) 웹 기본 경로에 옮기기


웹의 기본 경로는 /var/www/html 이다. 이쪽으로 해당 디렉터리를 옮기자.


# rm -rf /var/www/html/

# mv ./wordpress/ /var/www/html/





8. MySQL 데이터베이스 설정


1) root 비밀번호 설정 및 로그인


# mysqladmin -u root password new_password

# mysql -u root -p



2) DB 생성


wordpress 라는 이름으로 DB 생성

mysql> CREATE DATABASE wordpress;



3) 계정(wp)생성 및 DB 연동


mysql> GRANT ALL PRIVILEGES ON wordpress.* TO wp@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

mysql> exit;





9. 워드프레스 설정파일 및 소유권 수정



1) 설정파일


# cd /var/www/html

# cp wp-config-samples.php wp-config.php


아래와 같이 수정

# vi wp-config.php

// ** MySQL settings - You can get this info from your web host ** //

/** The name of the database for WordPress */

define('DB_NAME', 'wordpress');


/** MySQL database username */

define('DB_USER', 'wp');


/** MySQL database password */

define('DB_PASSWORD', 'password');


/** MySQL hostname */

define('DB_HOST', 'localhost');



2) 소유권 설정


# chown -R apache. /var/www/html/

# service httpd restart



이제 http://ip-address 워드프레스 설정화면이 나타난다.

설정 화면에서 사이트 제목 및 사용자명, 비밀번호, 이메일 주소 등을 입력한 후 워드프레스 설치하기를 눌러 워드프레스 설치를 완료한다.





10. WordPress 접속 및 SMTP 플러그인 설치


워드프레스 설정의 플러그인 메뉴의 플러그인 설치에서 WP-Mail-SMTP를 검색해서 설치한다.

설치 후에 Email 설정에서 다음과 같이 설정한다.



1) Advanced Email Options


From Email: 워드프레스에서 발송되는 메일의 발송자 e-mail  주소를 입력한다.

From Name: 발송자의 이름을 입력한다.

Mailer: 메일 발송에 사용될 메일 프로그램을 선택. Send all WordPress emails via SMTP를 선택한다

Return Path: 회신 주소로 발송자 e-mail을 사용할 경우 체크한다.



2) SMTP Options


SMTP Host: 워드프레스 서버에 sendmail 서비스를 설치했으므로 localhost 로 지정한다.

SMTP Port: 기본으로 사용하는 메일 포트인 25를 사용한다. 메일 포트로 다른 포트(예 587)을 사용할 경우 변경한다.

Encryption: 메일을 암호화하는 옵션. No encryption을 선택한다.

Authentication: No 설정


이와 같이 설정한 후 변경 사항을 저장하고 아래에 Test Email 란에 메일 주소를 입력하여 메일이 발송되는 지 테스트한다.

이젠 개인의 입맛에 맞게 홈페이지를 꾸미면 된다.




And


막강한 부트로더, GRUB

|


[출처 : 책]


GRUB 는 GRand Unified Bootloader의 약자로 리눅스 계열에서 가장 많이 사용하는 부트로더이다.




1. 리눅스 및 GRUB 에서의 하드디스크, 파티션 표시 법


리눅스에서 나타내는 장치 표시 방법과 GRUB에서 나타내는 장치 표시 방법에는 조금의 차이가 있다.



1) 리눅스






각각의 하드디스크를 여러 파티션으루 나누었을 때






2) GRUB -> IDE, S-ATA, SCIS 방식을 구분하지 않음.




각각의 하드디스크를 여러 파티션으루 나누었을 때




※ 정리


리눅스는 하드디스크 표시를 hdx, sdx 처럼 a부터, 파티션은 1부터 시작되지만

GRUB에서는 하드디스크를 구분 없이 hdx 방식으로 0부터 시작하며, 파티션 또한 하드디스크 번호와 괄호로 묶어 0부터 표시한다.





2. GURB 설정 파일


설정 파일은 /boot/grub/grub.conf  에 있다. vi 등의 편집기로 열면 된다.

GRUB 파일은 아래처럼 구성되어 있다.


# grub.conf generated by anaconda

#

# Note that you do not have to rerun grub after making changes to this file

# NOTICE:  You have a /boot partition.  This means that

#          all kernel and initrd paths are relative to /boot/, eg.

#          root (hd0,0)

#          kernel /vmlinuz-version ro root=/dev/sda7

#          initrd /initrd-[generic-]version.img

#boot=/dev/sda

default=0                                     // GRUB에 있는 부팅 목록 중 0번째(첫번째)로 부팅하기

timeout=5                                    // 5초 뒤에 자동으로 default 에 지정된 OS 로 부팅된다. 나는 빠른 부팅을 위해 1로 바꿨다. 

splashimage=(hd0,0)/grub/splash.xpm.gz  // GRUB 메뉴의 배경그림

hiddenmenu                                 // 히든 메뉴 설정할 수 있는 듯 하다.

title CentOS 6 (2.6.32-504.el6.i686)        // 첫번째, 즉 0번에 나타날 이름 설정

        root (hd0,0)                            // 마운트 할 하드 및 파티션 정보

        kernel /vmlinuz-2.6.32-504.el6.i686 ro root=UUID=81b1dda3-6776-4d4f-9e96-b3274cf5d32f rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet

                                             // OS 부팅 시 읽어올 커널 파일.

        initrd /initramfs-2.6.32-504.el6.i686.img         // initrd 파일을 지정



위 파일에는 없지만 다른 명령어들도 있다고 한다.


rootnoverify : root 명령과 비슷하지만 해당 파티션을 마운트 하진 않는다. 윈도우로 부팅할 경우 사용한다.

displaymem : BIOS에 있는 정보에 기반하여 현재 메모리 사용을 보여준다.   // 해봤는데 너무 빨리 지나가서 다시 지웠다.

chainloader : 연쇄 로더로 지정된 파일을 읽어온다. 파일이 지정된 파티션의 첫번째 섹터에 위치하고 있을 경우, 파일명을 사용하는 대신 블록리스트 표기법 +1을 사용한다. 윈도우와의 멀티부팅을 이용할 때 사용한다.



* 윈XP 멀티 부팅할 때의 예시


title Windows XP

        rootnoverify (hd0,1)  

        chainloadere +1





3. GRUB 명령어


쉘 프롬프트에서 grub를 입력하거나 부팅 시 grub 메뉴에서 c 를 입력하면 grub 명령행 모드로 들어갈 수 있다.

grub 명령어를 통해 특정 파일을 block 시키거나 부팅에 관련된 것들을 막강하게 편집할 수도 있다.

quit를 입력하면 grub 명령행 모드를 나올 수 있다.


※ GRUB에 대한 막강한 기능에 대해 잘 설명해 둔 곳이 있어 기록을 남겨둔다.

http://www.linuxlab.co.kr/docs/01-05-5.htm




And


CentOS6 Network Interface Card 설정

|


참고

http://webdir.tistory.com/116



1. 편집하려는 이더넷 카드 선택


# vi /etc/sysconfig/network-scripts/ifcfg-eth0




2. 항목 별 설명


DEVICE=eth0                    // 장치명, 첫번째 이더넷카드 

BOOTPROTO=static          // IP 부여 방식 결정, static 은 고정IP

HWADDR=XX:XX:XX:XX:XX:XX    // 이더넷카드의 MAC 주소

NM_CONTROLLED=no              // GUI 모드에서의 편리한 네트워크설정 허용, TUI에선 필요없음 

ONBOOT=yes                          // 시스템 시작시 자동으로 활성화

TYPE=Ethernet                        // Ethernet 에 대한 설정

UUID=XXXXXXX-XXX-XXX-XXX-XXXXXXX    // 고유ID를 부여하는 것으로 자동으로 부여됨

BROADCAST=192.168.0.255    // 브로드캐스트 지정

IPADDR=192.168.0.5               // IP 주소 지정

NETMASK=255.255.255.0        // 서브넷마스크 지정

USERCTL=no                         // 일반사용자의 eth0 제어 가능여부

IPV6INIT=no                          // IPV6 사용여부



# service network restart


※ Minimal version 으로 다시 깔아서 테스트 해본 결과

    BOOTPROTO=static 으로 변경해주고 IPADDR, GATEWAY, DNS 만 적어주면 외부와 통신 됨!


※ Tip

    ifup eth0 : eth0 아답터 시작

    ifdown eth0 : eth0 아답터 종료



And


prev | 1 | 2 | next