Ãʺ¸¿¡ ÀÇÇÑ, Ãʺ¸¸¦ À§ÇÑ Cent OS 6.5 ·Î NAS ¸¸µé¾îº¸±â.

witbox   
   Á¶È¸ 28102   Ãßõ 15    

http://www.yongcloud.co.kr/nas_wiki/doku.php?id=linux%EB%A5%BC_%EC%9D¡¦ (1593)

안녕하세요?

강좌라고 하기엔 부끄럽지만, 삽질의 결과물을 공유하고 싶어서 여기에 올립니다.
전혀 새로울 거 없습니다. 검색하면 다 나오지만, 손가락 덜 아프시라고 한 데 모아두었습니다.

## 작업의 배경 : 기성NAS는 재미없고, 윈도우+기능추가는 뭔가 아쉽고, 핵놀은 불안하고, 시간은 많고, 그래 직접 만들어보자!!

# #참고사이트 : 링크주소 참조

##  하드웨어 : TX100 + 8GB ram + 1TB HDD

## 운영체제 : 바위같은 안정성!! cent os 6.5 minimal( 최소설치, 한글폰트만 추가 )

## ip : 192.168.1.51

## 기능 : APM, FTP, SAMBA, OWNCLOUD, TRANSMISSION, PLEX, MUNIN(모니터링)

comment
** 리눅스를 설치, vi 다루실 정도의 스킬만 있어도 위의 기능을 모두 구현하실 수 있습니다. **
** 아래 명령문들을 드래그 해서 putty 프롬프트에 그대로 붙여 넣으시면 됩니다. **
** 설치/관리의 편의상 모두 패키지로 설치합니다. 설정도 최대한 간편하게 작업하도록 하였습니다.**
** 한 줄씩 드래그/붙여넣기가 귀찮으시면 아래 전체를 복사하셔서 메모장에서 프롬프트( # )를 미리 제거하고 여러 줄을 한꺼번에 붙여넣기 하시면 됩니다. **

그럼 시작합니다!!


==== 업데이트 및 주요 유틸리티 설치 ====
# yum -y update
# yum -y install ntsysv system-config-network-tui setuptool unzip wget rdate crontabs parted
# yum -y install fail2ban jwhois system-config-firewall-tui openssh-clients

==== 시간 동기화 ====
# rdate -s time.bora.net

==== SELinux 비활성화 ====
# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

==== iptables 비활성화 ====
#저는 공유기 아래에서 사용할거라 일단 iptables 는 껐습니다. 사용하실 분은 해당 포트만 iptables 에 추가해 주시면 됩니다.
# service iptables stop
# chkconfig iptables off

==== APM 설치 ====
# yum -y install httpd php mysql
# yum -y install gd gd-devel libpng libpng-devel libjpeg libjpeg-devel freetype freetype-devel fontconfig fontconfig-devel libxml2 libxml2-devel openssl openssl-devel gmp gmp-devel mhash mhash-devel libmcrypt libmcrypt-devel mysql-server php-mysql php-devel php-gd php-mbstring php-mhash php-xml perl

=== apache 설정 ===
설정파일 백업
# cp -av /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.ori

설정
# sed -i 's/KeepAlive Off/KeepAlive On/' /etc/httpd/conf/httpd.conf
# sed -i 's/#ServerName www.example.com:80/ServerName 127.0.0.1:80/' /etc/httpd/conf/httpd.conf
# sed -i 's/AddDefaultCharset UTF-8/#AddDefaultCharset UTF-8/' /etc/httpd/conf/httpd.conf
# sed -i 's/ServerTokens OS/ServerTokens Prod/' /etc/httpd/conf/httpd.conf
# sed -i 's/ServerSignature On/ServerSignature Off/' /etc/httpd/conf/httpd.conf
# sed -i 's/AllowOverride None/AllowOverride All/' /etc/httpd/conf/httpd.conf

=== php 설정 ===
설정파일 백업
# cp -av /etc/php.ini /etc/php.ini.ori

설정
# sed -i 's/short_open_tag = Off/short_open_tag = On/' /etc/php.ini
# sed -i 's/;date.timezone =/date.timezone = "Asia\/Seoul"/' /etc/php.ini
# sed -i 's/allow_call_time_pass_reference = Off/allow_call_time_pass_reference = On/' /etc/php.ini
# sed -i 's/expose_php = On/expose_php = Off/' /etc/php.ini
# sed -i 's/error_reporting = E_ALL \& ~E_DEPRECATED/error_reporting = E_ALL \& ~E_NOTICE \& ~E_DEPRECATED \& ~E_USER_DEPRECATED/' /etc/php.ini
# sed -i 's/register_globals = Off/register_globals = On/' /etc/php.ini
# sed -i 's/magic_quotes_gpc = On/magic_quotes_gpc = Off/' /etc/php.ini

=== mysql 설정 ===
설정파일 백업
# cp -av /etc/my.cnf /etc/my.cnf.ori

# cp -av /usr/share/mysql/my-huge.cnf /etc/my.cnf
 --> overwrite : yes
# sed -i 's/skip-locking/skip-external-locking/' /etc/my.cnf

=== 서비스 시작 ===
# service httpd start
# service mysqld start

부팅시 데몬 시작
# chkconfig httpd on
# chkconfig mysqld on

=== mysql 초기설정 ===
# /usr/bin/mysql_secure_installation
--> root 암호 생성
--> 나머지 모두 엔터

=== ftp 서버 ===
# yum install -y vsftpd ftp
# mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.ori

설정
# vi /etc/vsftpd/vsftpd.conf

빈 파일에 그대로 입력
--------------------------------------+
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

pasv_enable=YES
pasv_promiscuous=YES
pasv_min_port=51000
pasv_max_port=51100
--------------------------------------+
공유기 포트포워딩에서 51000 ~ 51100 열어주세요.

# service vsftpd start
# chkconfig vsftpd on

사용자 추가
# adduser ftpuser
# passwd ftpuser

==== samba ====
# yum -y install samba
# cp /etc/samba/smb.conf /etc/samba/smb.conf.ori

# sed -i 's/MYGROUP/WORKGROUP/' /etc/samba/smb.conf
# sed -i 's/security = user/security = share/' /etc/samba/smb.conf 
# sed -i 's/server string = Samba Server Version %v/server string = NAS-51/' /etc/samba/smb.conf 

위 빨강 글씨는 탐색기에서 보여질 이름입니다.

설정추가
# vi /etc/samba/smb.conf
아래 내용을 맨 끝에 넣어줍니다.
//--------------------------------------+
[nas-51]
        comment = NAS-51
        browseable = yes
        writable = yes
        path = /home/ftpuser
--------------------------------------//
경로는 실제 경로를 넣어줍니다.


# chkconfig smb on
# service smb start

사용자 인증 추가
# smbpasswd -a root
 --> 패스워드 입력
# service smb restart


==== owncloud ====
# cd /tmp
# tar -xvf owncloud-latest.tar.bz2
# mv owncloud /var/www/html
# chown -R apache:apache /var/www/html/owncloud

# mysql -uroot -p
sql> CREATE DATABASE owncloud;
sql> quit;

실행:

==== transmission ====
리포지토리 추가

설치:
# yum -y  install transmission-daemon

한번 시작/종료
# service transmission-daemon start
# service transmission-daemon stop

# chkconfig transmission-daemon on

사용자 추가:
빨강 글씨는 임의로 넣으세요.
# useradd -m transmission
# passwd transmission

# mkdir -p /home/transmission/Downloads
# mkdir -p /home/transmission/Incoming

# cp /var/lib/transmission/.config/transmission/settings.json  /var/lib/transmission/.config/transmission/settings.json.ori

# sed -i 's/rpc-whitelist-enabled": true/rpc-whitelist-enabled": false/' /var/lib/transmission/.config/transmission/settings.json
# sed -i 's/rpc-authentication-required": false/rpc-authentication-required": true/' /var/lib/transmission/.config/transmission/settings.json
# sed -i 's/rpc-username": ""/rpc-username": "transmission"/' /var/lib/transmission/.config/transmission/settings.json
# sed -i 's/rpc-password":.*/rpc-password": "password",/' /var/lib/transmission/.config/transmission/settings.json

# sed -i 's/"download-dir": ".*/"download-dir": "\/home\/transmission\/Downloads",/' /var/lib/transmission/.config/transmission/settings.json
# sed -i 's/"incomplete-dir": ".*/"incomplete-dir": "\/home\/transmission\/Incoming",/' /var/lib/transmission/.config/transmission/settings.json
# sed -i 's/"incomplete-dir-enabled": false,/"incomplete-dir-enabled": true,/' /var/lib/transmission/.config/transmission/settings.json

# chown -R transmission.transmission /home/transmission/Downloads/ /home/transmission/Incoming/
# chmod g+w /home/transmission/Downloads/ /home/transmission/Incoming/

# service transmission-daemon start

--- 실행 ---


==== plex server ====

# yum localinstall plexmediaserver-0.9.8.18.290-11b7fdd.x86_64.rpm
# service plexmediaserver start

실행

==== 모니터링 도구 ====
# yum -y install munin

# vi /etc/munin/munin.conf
아래 주석 제거
//---------------------------------------+
  dbdir   /var/lib/munin
  htmldir /var/www/html/munin
  logdir  /var/log/munin
  rundir  /var/run/munin
---------------------------------------//

# vi /etc/munin/munin-node.conf
---------------------------------------+
allow ^127\.0\.0\.1$
allow 192.168.1.51
---------------------------------------+

환경설정파일 
# vi /etc/httpd/conf.d/munin.conf
//---------------------------------------+
  AuthName "munin"
---------------------------------------//

사용자 munin 의 패스워드 생성
# htpasswd -cm /etc/munin/munin-htpasswd munin

실행:
http://192.168.1.51/munin/



휴~ 여기까지 별 문제 없이 따라오신 분은 위의 기능들이 모두 작동할 거라 생각됩니다.

## 남은 숙제:
  사용자/그룹 관리
  공유폴더( ftp, samba, owncloud 등등 ) 관리
  이 외 기능추가 및 최적화


실제로 사용에 들어가시기 전 위의 단계를 몇번이고 반복해서 본인만의 최적의 조건을 찾으시길 바랍니다. 

혹 에러나거나 막히는 부분이 있으시면 답글 달아주세요. 능력이 닿는 한 도와드리겠습니다.
³Ê¹« °¨»çÇÕ´Ï´Ù. ¸·¿¬Çϱ⸸ Çߴµ¥ µµ¿òÀÌ µÉµí ÇÕ´Ï´Ù....  Á¶¸¸°£ ... ÃÖÀúÀü·ÂÀ¸·Î Çϳª ¸¸µé¾î¾ß °Ú½À´Ï´Ù...
º£ÀÌÆ®·¹ÀÏ Äõµå ¼¼Æ®·Î´Ù°¡ Çؼ­ Ç®·Îµå  ¾à 60¿ÍÆ® ¹Ì¸¸À¸·Î Çϳª ¸¸µé¾îº¼°¡ »ý°¢Áß¿¡ ÀÖÁö¸¸.. ÀÚ±ÝÀÌ ÇÏÇÏ ... ³Ê¹« °¨»çÇÕ´Ï´Ù.OWNCLOUD, TRANSMISSION, PLEX ÀÌ 3 ÇÁ·Î±×·¥Àº ¾î¶²°Ç°¡¿ä? ³Ê¹« ±Ã±ÝÇÏ³×¿ä ´ëÃæ ¼³¸íÀ» ºÎŹµå·Áº¾´Ï´Ù...
     
À̼º¸¸ 2014-06
OWNCLOUD ´Â °³Àοë À¥ÇϵåÀÔ´Ï´Ù.
 http://121.160.93.79:5180/owncloud test / test

Transmission Àº À¥ºê¶ó¿ìÀú¿¡¼­ Å䷻Ʈ¸¦ °ü¸®ÇÒ ¼ö ÀÖ´Â ÇÁ·Î±×·¥ÀÔ´Ï´Ù.
 http://121.160.93.79:9090/transmission/web/

plex ´Â µ¿¿µ»ó ¼­¹ö¶ó »ý°¢ÇÏ½Ã¸é µË´Ï´Ù. °ø½Ä»çÀÌÆ®.
 https://plex.tv/
ȲÀ籤 2014-06
±ÍÁßÇÑ °­Á °¨»çÇÕ´Ï´Ù
ÃÖ½ÂÇö 2014-06
¼ÒÁßÇÑ Á¤º¸ °¨»çÇÕ´Ï´Ù.
°­Á °¨»çÇÕ´Ï´Ù
Çູ 2014-06
ÁÁÀº°­Á °¨»çÇÕ´Ï´Ù.
¼Õ±¤¹Î1 2014-06
°¨»çÇÕ´Ï´Ù^^
1±èÀÎ1 2014-06
Á¤¸» °¨»çÇÕ´Ï´Ù...^^
¹èÁؼ® 2014-06
ÁÁÀº °­Á °¨»çÇÕ´Ï´Ù^^*
blueMango 2014-06
ÀÏ´Ü °¨»çºÎÅÍ ÇÏ°í ±Û ÀаڽÀ´Ï´Ù.
Àú°¡ Å¥³À¶§¹®¿¡ ´ä´äÇØÇÏ°í ÀÖ¾ú´Âµ¥...
½Ã°£µµ ³ª°í ÀÌÁ¦ ½½½½ ³ë´ÚÁúÀ» ½ÃÀÛÇØ º¸·Á±¸¿ä....

°¨»çÇÕ´Ï´Ù.
±ÇÈñ¼® 2014-07
ÁÁÀº Á¤º¸ °¨»çÇÕ´Ï´Ù.
Á¤ÇöÅ 2014-07
ÁÁÀº Á¤º¸ °¨»çÇÕ´Ï´Ù. ¼³Á¤ ¹æ¹ý ƯÀÌÇÑ ºÎºÐµéÀÌ Àֳ׿ä. µµ¿òµÉ °Í °°½À´Ï´Ù.
¸ðÅåÀÌ 2014-07
ÁÁÀº Á¤º¸ °¨»çÇÕ´Ï´Ù
Áý¿¡ ÀÖ´Â ³ëÆ®ºÏ¿¡ Çѹø µµÀü ÇØ ºÁ¾ß °Ú³×¿ä ^^
ÁÁÀº Á¤º¸ °¨»çÇÕ´Ï´Ù. ¾ÆÁÖ  ½±°Ô ÀÛµ¿ µÇ³×¿ä..  ¼³Á¤ ¹æ¹ý ÀÚ¼¼È÷ ºÁ¾ß°Ú³×¿ä..
Àè¿Â 2014-10
°³ÀÎÀûÀ¸·Î´Â Æ®·£½º¹Ì¼Ç ´ë½Å VNC¼¼Æÿ¡ Å䷱Ʈ Ŭ¶óÀÌÀ̾ðÆ®¸¦ vuze¸¦ ÀÌ¿ëÇÏ°í ÀÖ½À´Ï´Ù.
ÀÚ¹Ù±â¹ÝÇÁ·Î±×·¥À̶ó ÀÎÅÍÆäÀ̽ºµµ ´Ù¸¥ Ç÷§Æû°úµµ µ¿ÀÏÇÏ°í ±â´Éµµ ÁÁ¾Æ¼­ ¸¸Á·ÇÏ°í »ç¿ëÁßÀÔ´Ï´Ù.


Á¦¸ñPage 4/28
2014-04   27117   dydans
2014-04   46847   dydans
2014-05   11215   ÁÖ¿µÁø¿µ¾Æºü
2014-05   16663   ¶Ñ¶Ñ±è´ë¿ø
2014-05   13766   user
2014-05   17286   ±èȲÁß
2014-05   15409   ±èȲÁß
2014-05   17020   ±èȲÁß
2014-05   17756   ¹Ú
2014-06   28103   witbox
2014-06   18511   ¹ÚÁ¤±æinfoeyes
2014-06   30633   ȲÁø¿ì
2014-07   23633   ȲÁø¿ì
2014-07   25362   ºÐ³ëÀÇ´Ù¿îÈú
2014-07   12144   user
2014-07   23579   ÁÖ¿µÁø¿µ¾Æºü
2014-08   29487   ºü½Ã¿Â
2014-09   34929   blackra1n
2014-09   14708   ±èȲÁß
2014-10   15628   ±èȲÁß