760 likes | 1.19k Views
각종서버구축하기 NFS, Samba, FTP, APM. http://rainbow.sunmoon.ac.kr/~yypark http://ubilab.sunmoon.ac.kr. NFS (Network File System). Configuring the NFS Environment. Describe the Functions of an NFS Server and an NFS Client. Daemon Processes Related the NFS Environment Solaris 2.x
E N D
각종서버구축하기NFS, Samba, FTP, APM http://rainbow.sunmoon.ac.kr/~yypark http://ubilab.sunmoon.ac.kr
Configuring the NFS Environment • Describe the Functions of an NFS Server and an NFS Client. • Daemon Processes Related the NFS Environment • Solaris 2.x • /etc/dfs/dfstab file • /etc/vfstab file • 'share' and 'unshare' commands • 'shareall' and 'unshareall' commands • 'mount' and 'umount' commands • Linux • /etc/exports file • /etc/fstab file • 'mount' and 'umount' commands 3
Comparision Copying and Sharing Files • Using the ftp and rcp commands • to copy files over the network • problem : • waste the disk space on multiple machines • synchronization problem • The sharing of remote file resources • files stored on one machine • remote users can access those files as if they were local files and directories 4
Distributed File Systems • Definition : file system types that provide the architectural support for mounting over the network • Sun’s NFS product • AT & T RFS(Remote File Sharing) product • NFS has become the industry standard • built on the top of TCP/IP and Sun’s RPC and etc. • provides file sharing in a hetrogenous environment including UNIX, MS-DOS, and VMS systems 5
How the NFS Environment Works • The Conditions to Share Files in the NFS • Each machine’s host names and internet address. • A server must share a file system or directory(=file resource). • The client must remotely mount that file resource. • NFS Servers • designates local file resources • to be shared with other machines on the network • response to client requests • NFS Clients • mounts file resources that are shared over the networks. • treats them as if they were local file systems 6
Sharing Resources Mounting Resources Solaris share and unshare shareall and unshareall /etc/dfs/dfstab mount and umount mountall and umountall /etc/vfstab Linux /etc/exports mount and umount /etc/fstab Summary : Sharing and Mounting File Resources (Solaris 2.x vs. Linux) 8
NFS installation [1] • Download NFS RPM • nfs-utils-1.0.1-2.9.i386.rpm • portmap-4.0-54.i386.rpm 9
NFS installation [2] • Installtion NFS RPM • nfs-utils-1.0.1-2.9.i386.rpm • portmap-4.0-54.i386.rpm 10
Sharing File Resources(Fedora 5) [1] • The NFS Sever Side • Edit the /etc/exports file • to enable automatic sharing of resources whenever the system is booted. • Basically, NFS server occur mapping when client has a same user of NFS sharing direcrory. /home 디렉토리를 210.119.33.193 클라이언트에서 Read/Write 권한으로 허용 /nfs 디렉토리를 210.119.33.193 클라이언트에 r/w 허용(root라도 nobody 권한으로) /nfs/data1 디렉토리를 210.119.33.193 클라이언트에서 접근제한 (위에서 nfs를 공유했지만 /nfs/data1은 제한) /nfs/data3 디렉토리를 210.119.33.193 클라이언트에 r/w 허용(root제외한 사용자는 nobody 권한으로) 11
Sharing File Resources(Fedora 5) [2] • Start the NFS server daemons by executing the following script. • Stop the NFS server daemons by executing the following script. • Restart the NFS server daemons by executing the following script. 12
NFS 실습하기 - 서버 • 서버 설정하기(1) • NFS가 서버에 설치되어 있는지 확인 • # rpm –qa | grep nfs • NFS에 필요한 설정파일 편집 • # vi /etc/exports • # mkdir /home/nfs • # cd /home/nfs • # touch aaa bbb ccc (테스트하기 위함) 13
NFS 실습하기 - 서버 • 서버 설정하기(2) • 서버 방화벽 해제 • # /usr/sbin/lokkit • 방화벽을 해제한다(비활성에 체크) • NFS 데몬 재실행 • # /etc/init.d/nfs restart • NFS의 실행여부 확인 14
NFS 실습하기 - 클라이언트 • 클라이언트에서 마운트하기 • NFS서버의 /home/nfs 디렉토리에 마운트할 디렉토리 /mnt/nfs를 만들고 마운트함 • # mkdir /mnt/nfs • # mount –t nfs 서버IP:/home/nfs /mnt/nfs • # ls /mnt/nfs • aaa, bbb, ccc 테스트파일이 보여져야 함 15
SAMBA 서버 구축 http://rainbow.sunmoon.ac.kr/~yypark http://ubilab.sunmoon.ac.kr
SAMBA 서버 소개 • SAMBA 서버 • 파일서버의 일종 • 이종의 운영체제와의 자원을 공유하기 위한 목적으로 개발 • SAMBA 서버의 특징 • FTP 와 달리 매번 인증을 할 필요가 없음 • 웹브라우저로 이용가능 • 웹폴더로도 활용가능 • 네트워크 드라이브로 이용가능 (Window 탐색기) 18
SAMBA서버 설치 • Samba source compile 설치 • Source받기 • # wget http://us1.samba.org/samba/ftp/old-versions/samba-3.0.21b.tar.gz • 압축풀기 • # tar xvfz samba-3.0.21b.tar.gz • Makefile 생성하기 • # cd samba-3.0.21b/source • # ./configure • 컴파일 • # make • 설치하기 • # make install 20
SAMBA서버 설치 • Samba 서버 설치 확인 • Smbd & nmbd 데몬 확인 • /usr/local/samba/sbin 이동 • # smbd –D ; nmbd –D; ps –ef | grep mbd • smb.conf 확인 • /usr/local/samba/lib/smb.conf • 없을 경우 /etc/samba/smb.conf 에서 복사 • #cp /etc/samba/smb.conf /usr/local/samba/lib 21
SAMBA서버 설치 • Samba rpm받기 • Superuser.co.kr웹 싸이트 • samba-3.0.21b-2.i386.rpm • samba-client-3.0.21b-2.i386.rpm • samba-swat-3.0.21b-2.i386.rpm • Console “wget” 으로 받기 • # wget http://ftp.superuser.co.kr/pub/fedora/core5/x86_64/i386/os/Fedora/RPMS/rpm_name 22
SAMBA서버 설치 • RPM 설치 • rpm -Uvh --nodeps (--replacefiles) • ex) rpm –Uvh –nodeps samba-3.0.23c-4.i386.rpm • -U : 패키지 업그레이드 • -v : 패키지 검증 • -h : progressbar 출력 • --nodeps : 의존성무시 • --replacefiles : 파일충돌시 • 설치확인 • /etc/init.d/smb 실행 23
SAMBA서버 설정 • smb.conf • samba서버의 모든 설정이 기술된 파일 • 구성 • [global] 공통적인적용부분을 설정하는 곳 • [homes] 계정사용자의 적용부분, global 보다 우선된다 • [printers] 네트워크 공유프린터에 대한 설정 • 세부구성표 (예문) 25
SAMBA서버 설정 • Smb.conf 구성요소 계속 • homes 26
SAMBA서버 설정 • Smb.conf 구성요소 계속 • Printers • Smb.conf 파일 예제 • http://www.linuxchannel.net/docs/smbconf2.html 27
nmbd 데몬 실행 데몬 실행 확인 SAMBA서버 데몬 • NetBios네임서버 데몬 nmbd • 윈도우 시스템과의 공유를 위한 데몬 • Smbd 와 함께 실행되야 정상적으로 작동 • /etc/init.d/smb(fedora5 현 default 경로) 스크립트에 의해 smbd와 함께 실행 됨 • nmbd 데몬 실행 및 확인 29
smbd 데몬 실행 데몬 실행 확인 SAMBA서버 데몬 • 주데몬 smbd • Samba 서버의 주 데몬 • nmbd 와 같이 실행해야 정상 실행 • /etc/init.d/smb(fedora5 현 default 경로) 스크립트에 의해 nmbd와 함께 실행 됨 • smbd 데몬 실행 및 확인 30
root 삼바계정을 등록 • -a : 계정을 등록하면서 • password를 설정하는 옵션 사용자 관리 • 사용자 생성 • 일반계정을 samba계정으로 생성할 경우 계정의 디렉터리가 기본 디렉터리로 설정됨 • smbpasswd 사용 • 등록 확인 • # vi /etc/samba/smbpasswd • # vi /usr/local/samba/private/smbpasswd (source 설치시) • 세부설정시 smb.conf 의 homes 의 형식으로 내용추가 32
사용자 관리 • 사용자 삭제 • # smbpasswd –x samba_user_id • root 권한 필요 • 암호 변경 • # smbpasswd samba_user_id (root권한시) • # smbpasswd (일반유저) 33
SAMBA 클라이언트 • 윈도우에서 네트워크 드라이브 연결 • 210.119.33.55 에 root를 사용를 통해 samba계정을 생성 • 윈도우 탐색기에서 도구 -> 네트워크 드라이브 연결 클릭 • 폴더에 \\210.119.33.55\root입력후 “마침” 버튼 클릭 35
SAMBA 클라이언트 • 인증과정 36
SAMBA 클라이언트 • 연결확인 210.119.33.55 root 생성 확인 37
FTP 서버 구축 http://rainbow.sunmoon.ac.kr/~yypark http://ubilab.sunmoon.ac.kr
Proftpd 소개 • Proftpd 의 특징 • Standalone, xinetd 모두 운용가능 • Shadown 패스워드 사용가능 • 퍼미션을 개별적 설정가능 • Free software • 소스 공개 software • 가상ftp호스트, 서버보안, 성능면에서 우수 40
Proftpd 설치 • Proftpd 소스설치 • Source 받기 • # wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.0.tar.gz • 압축풀기 • 작업위치는 /usr/local (리눅스의 일반적인 어플리케이션 경로) • # cp proftpd-1.3.0.tar.gz /usr/local • # tar xvfz proftpd-1.3.0.tar.gz • Makefile 생성하기 • # ./configure --prefix=/usr/local/proftpd –enable-autoshadow –enable-shadow (page 6참고) • 컴파일 • # make • 설치하기 • # make install 42
Proftpd 설치 • Option 43
Proftpd 설치 • Option 계속 44
Proftp 실행 실행확인 Proftpd 설치 • 설치확인 • /usr/local/proftpd 경로 확인 • make install 로 인해 --prefix 옵션에 맞게 설치 되었는지 확인 • # ls –al /usr/loca/proftpd • proftpd 실행 • # /usr/local/proftpd/sbin/proftpd 45
Proftpd 설치 • Client 접속 확인 [접속인증후화면] [접속인증화면] 46
Xinetd 를 이용한 운영 • Xinetd 를 이용한 운영 • Proftpd 는 기본적으로 standalone 방식이지만 xinetd 를 이용하여 운영이 가능 • 장점 • Xinetd 에 의해 client 의 요청시에만 proftpd 서버가 메모리에 적제되기 때문에 메모리 낭비를 방지 • 설정방법 • /etc/xinetd.d/proftpd 파일생성 (page 11 참고) • /usr/local/proftpd/etc/proftpd.conf 설정 변경 (page 13 참고) • “ServerType inetd” 로 설정 • # /etc/init.d/xinetd restart 48
Xinetd 를 이용한 운영 • /etc/xinetd.d/proftpd 예문 Service ftp { disable = no flags = REUSE socket_type = tcp instances = stream wait = 50 user = root server = /usr/local/proftpd/sbin/in.proftpd log_on_success = HOST PID log_on_failure = HOST RECORD } 49
Xinetd 를 이용한 운영 • proftpd.conf 주요 설정 50