Tip&Tech/Server2009.05.04 15:39
* 본 게시물은 MissFlash가 "CentOS 리눅스 구축관리실무"를 참고로 유용한 단축키 및 명령어를 정리한 것입니다.
* 게시물이 지속적으로 업데이트 될 예정이니, 퍼가기 보다는 링크나 트랙백을 이용해 주세요 :)

* MissFlash의 리눅스 유용 명령어 목록
  • vsftpd 설치하기
    1. cd /usr/local/src/ftpd/ : 디렉토리 이동
    2. lftpget ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.5.tar.gz : 공식 사이트로부터 다운로드
    3. useradd nobody : nobody 사용자 추가(nobody 사용자가 있는지 확인, 사용자가 있으면 다음 단계로 진행)
    4. mkdir /usr/share/empty/ : 빈 디렉토리 생성(만들어져 있으면 다음 단계로 진행)
    5. mkdir /var/missflash/ : missflash 계정의 홈 디렉토리 생성
    6. useradd -d /var/missflash missflash : missflash 계정의 홈 디렉토리 설정
    7. chown root.root /var/missflash : 디렉토리 소유자와 소유그룹 변경
    8. chmod 755 /var/missflash : 디렉토리 퍼미션 변경
    9. make : 실행파일 생성[각주:1]
    10. make install : 프로그램 인스톨
    11. cp vsftpd.conf /etc : vsftpd 설정 파일 복사

  • vsftpd 서버 실행 : /usr/local/sbin/vsftpd &
    • vsftpd를 standalone으로 설정하라고 나올 경우 vsftpd.conf 파일 제일 아래에 listen=YES[각주:2] 라고 입력

  • vsftpd.conf 설정
    • anonymous_enable=YES : 익명 FTP 서비스 활성화 여부 설정
    • local_enable=YES : 로컬 계정 사용자 접속 여부 설정
    • write_enable=YES : 쓰기 가능 여부 설정
    • local_umask=022 : 파일 퍼미션 정의(022로 설정하면 파일의 퍼미션은 644가 됨)
    • anon_upload_enable=YES : 익명 FTP 접속자의 파일 업로드 권한 설정
    • anon_mkdir_write_enable=YES : 익명 FTP 접속자의 디렉토리 생성 권한 설정
    • dirmessage_enable=YES : FTP 접속자가 다른 디렉토리로 이동시, 알림메시지 출력 여부 설정
    • xferlog_enable=YES : FTP 접속자들의 업/다운로드 상황 로그파일 저장 여부 설정
    • connect_from_port_20=YES : standalone 모드를 운영하면서 데이터 전송포트 사용시 설정
    • chown_uploads=YES : 익명 FTP 서비스에서 익명 접속자가 업로드한 파일의 소유권 자동 변경 여부 설정
    • chown_username=whoever : 익명 FTP 서비스에서 익명 접속자가 업로드한 파일의 소유권 자동 변경한 후, 그 소유권을 변경할 사용자 설정(root로 설정하지 말 것!)
    • xferlog_file=/var/log/vsftpd.log : 로그파일 경로 설정
      • cp vsftpd.log /etc/logrotate.d/vsftpd : 생성한 로그파일을 /etc/logrotate.d/vsftpd로 복사
    • xferlog_std_format=YES : 로그파일 포맷 설정
    • idle_session_timeout=600 : idle 상태에서 접속을 유지할 최대 시간 설정(기본값 300초)
    • data_connection_timeout=120 : 파일 업/다운로드시 연결을 유지하는 시간 설정(기본값 300초)
    • xferlog_std_format=YES : 로그파일 포맷 설정
    • nopriv_user=missflash : 익명 FTP 접속자가 접속하는데 사용할 사용자 설정(기본값 nobody)
    • async_abor_enable=YES : async ABOR 명령 가능 여부 설정(기본값 NO)
    • ascii_upload_enable=YES : ASCII 파일 업로드 가능 여부 설정(기본값 NO)
    • ascii_download_enable=YES : ASCII 파일 다운로드 가능 여부 설정(기본값 NO)
    • ftpd_banner=Welcome : FTP 접속자에게 보여줄 환영 메시지 설정
    • deny_email_enable=YES : 익명 FTP 접속시 접속을 거부할 이메일[각주:3] 설정(기본값 NO)[각주:4]
    • banned_email_file=/etc/vsftpd.banned_emails : 접속을 거부할 이메일의 파일 경로 설정
    • chroot_local_user=YES : 홈 디렉토리 위로 이동 제한 여부 설정(기본값 NO)[각주:5]
    • chroot_list_enable=YES : chroot에서 제외할 사용자 목록 파일 사용 여부 설정(기본값 NO)
    • chroot_list_file=/etc/vsftpd.chroot_list : chroot에서 제외할 사용자 목록 파일과 경로 설정
    • ls_recurse_enable=YES : FTP 접속자들의 ls -R 명령어 사용가능 여부 설정(기본값 NO)
    • listen=YES : standalone 모드로 서비스할 때 설정(기본값 xinetd)
    • pam_service_name=vsftpd : pam 인증에 사용할 설정파일의 이름 설정
      • 해당 파일 복사 : cp /usr/local/src/ftpd/vsftpd-2.0.5/RedHat/vsftpd.pam /etc/pam.d/vsftp
      • 사용자 계정 접속 제한 : (vsftp 파일 내용중) item=user sense=deny file=/etc/ftpusers
    • pasv_min_port=5000 : 패시브 모드 최소 포트번호 설정
    • pasv_max_port=6000 : 패시브 모드 최대 포트번호 설정(iptables 방화벽에서 5000~6000까지 오픈해야 함)
    • pasv_enable=NO : 패시브 모드를 해지(기본값 YES)
    • max_clients=100 : 최대 동시접속자수 제한 설정(기본값 0[각주:6])
    • max_per_ip=5 : IP당 최대 가능 접속수 설정(기본값 0)
    • session_support=YES : wtmp에 접속로그 남기도록 설정(YES 설정시 last 명령으로 접속 사용자의 최근 접속시간 파악 가능)
    • trans_chunk_size=8192 : 파일 업/다운로드시 지정한 byte 단위로 잘라서 전송(4096부터 65536사이의 값으로 지정해야 함, 기본값 0[각주:7])
    • local_max_rate=500000 : 계정 사용자의 최대 초당 전송량(bytes) 제한(기본값 0)
    • anon_max_rate=300000 : 익명 접속자의 최대 초당 전송량(bytes) 제한(기본값 0)
    • force_dot_files=YES : 숨김 파일(.으로 시작하는 파일)을 보여줄지 여부 설정(기본값 NO)
    • hide_ids=YES : 디렉토리와 파일의 원래 소유자와 소유그룹을 숨길지 여부 설정(기본값 NO)
    • deny_file={*.mp3,*.wmv} : 특정 확장자 파일 업로드 제한
    • hide_file={*.mp3,*.wmv} : 특정 확장자 파일 열람 제한

  • vsftpd 서버 시작스크립트 생성[각주:8]
    1. /etc/vsftpd 디렉토리 생성 및 /etc/vsftpd/vsftpd.conf 파일 저장
    2. 시작 스크립트 파일[각주:9]/etc/rc.d/init.d/vsftpd 파일로 저장
    3. 스크립트에 실행권한 부여 : chmod 755 /etc/rc.d/init.d/vsftpd
    4. chkconfig 이용 런레벨 3, 5번에 추가
      • chkconfig --add vsftpd
      • chkconfig --level 3 vsftpd on
      • chkconfig --level 5 vsftpd on


  • 막간을 이용한, sftp 설치 방법
    • openssh 패키지에 포함되어 있음
    • /etc/ssh/sshd_config 파일 내 "Subsystem   sftp   /usr/libexec/openssh/sftp-server" 부분 활성화
    • sshd 서비스 시작

  • 막간을 이용한, sftp 사용 방법(클라이언트 설정)
    • 포트 : 22
    • 서버유형 : SFTP using SSH2



지금까지 2회에 걸쳐 FTP 서비스에 대해 살펴봤습니다. 다소 지루한 작업이었지만, 필요할 때마다 찾아보기는 좋을 것 같네요...
Canon EOS 5D | Aperture priority | Spot | 1/800sec | F/5.0 | 0.00 EV | 75.0mm | ISO-100
  1. 이때 디렉토리 경로는 "/usr/local/src/ftpd/vsftpd-2.0.5"이어야 합니다. [본문으로]
  2. 설정옵션 인자와 값 사이에는 공백이 있으면 안됩니다.(listen = YES 라고 입력하면 실행 불가) [본문으로]
  3. 익명 접속자의 패스워드에 이메일을 입력해야 합니다. [본문으로]
  4. 접속을 거부할 이메일은 "/etc/vsftpd.banned_emails" 에서 설정할 수 있습니다. [본문으로]
  5. chroot에서 제외할 사용자는 "/etc/vsftpd.chroot_list" 파일에 작성하면 됩니다. [본문으로]
  6. unlimited를 의미합니다. [본문으로]
  7. vsftpd가 알아서 전송합니다. [본문으로]
  8. 전체적인 절차만 설명하니, 자세한 내용은 책이나 검색사이트를 참고하시기 바랍니다. [본문으로]
  9. 구체적인 스크립트 내용은 생략합니다. [본문으로]
저작자 표시 비영리 변경 금지
신고

이 글은 새로운 정보가 추가될 때마다 업데이트됩니다. 추천으로 아래 숫자에 1을 더해보세요. :)
RSS구독을 하시면 포스트를 배달해 드립니다. ▷ 한RSS 구독하기, 구글리더 구독하기

댓글을 달아 주세요

  1. 으잉?? 귀국하신건가요??
    귀국 여행기 포스트는 준비중이신가 봐요..ㅋㅋ
    몸건강히 잘다녀오셨슴니꽈~^^

    2009.05.04 17:59 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 네; 덕분에 몸건강히 잘 다녀왔습니다.

      다행히 징검다리 휴일이라 오늘 하루 푹 쉬었네요 ㅎㅎ;

      2009.05.05 20:38 신고 [ ADDR : EDIT/ DEL ]
  2. 한때는 주 운영체제가 유닉스였는데 서버 호스팅을 받은 뒤로는 거의 사용하지 않게 되더군요.

    2009.05.04 20:05 신고 [ ADDR : EDIT/ DEL : REPLY ]
    • 띄엄띄엄 공부하다가 이번에 새로 리눅스를 공부하는 중입니다.

      확실히 XP와는 다른 관리의 묘미가 있는 것 같습니다. 게다가 안정적인 운영까지 ^^;

      2009.05.05 20:39 신고 [ ADDR : EDIT/ DEL ]
  3. Hare

    안녕하세요!! 명령어 참 정리 잘되어서 참고하고 갑니다!!

    2011.12.05 17:13 신고 [ ADDR : EDIT/ DEL : REPLY ]
  4. Favicon of http://www.uggunitedkingdomv.com/ BlogIcon cheap uggs

    관리자의 승인을 기다리고 있는 댓글입니다

    2013.01.05 02:29 [ ADDR : EDIT/ DEL : REPLY ]


티스토리 툴바