기금넷 공식사이트 - 회사 연구 - 리눅스 서버에서 FTP를 수행하는 방법. 조언해주세요.

리눅스 서버에서 FTP를 수행하는 방법. 조언해주세요.

Linux에서의 FTP 설치 및 구성

1. FTP 설치

1. FTP가 설치되어 있는지 확인: [root@localhost ~]# rpm -q vsftpd

설치된 경우 버전 정보가 표시됩니다:

[root@localhost ~]# vsftpd-2.0.5-16.el5_5.1

그렇지 않으면 다음과 같이 표시됩니다:[root@localhost ~]# vsftpd 패키지가 설치되지 않았습니다.

2. FTP가 설치되지 않은 경우 yum install vsftpd 명령을 실행하세요.

구체적인 내용은 다음과 같습니다. : (업데이트가 안되면 먼저 인터넷에 접속할 수 있도록 구성합니다. CentOS라는 문서가 있습니다. VMware에서는 인터넷 접속 방법에 대한 솔루션으로 인터넷 접속이 안되는 문제를 해결할 수 있습니다.)

[root@localhost ~]# yum install vsftpd

[root@localhost ~]#

3. ftp 설치 완료 후 루트 라인을 주석 처리합니다. /etc/vsftpd/user_list 파일 및 /etc/vsftpd/ftpusers 파일에서

# root

4. 다음 명령을 실행합니다.

# setsebool -P ftpd_disable_trans=1

/etc/vsftpd/vsftpd.conf를 수정하고 마지막 줄에 local_root=/를 추가합니다.

ftp 프로세스를 다시 시작합니다. #service vsftpd restart

참고: FTP 관련 구성 파일을 수정할 때마다 적용하려면 FTP 프로세스를 다시 시작해야 합니다.

ftp 서버를 사용할 준비가 되었습니다.

********************************************* *** ****************************

vsftpd 구성 파일 설명:

vsftpd.ftpusers: /etc 디렉터리에 있습니다. 루트 등 FTP 서버에 액세스할 수 없는 사용자 계정을 지정합니다.

vsftpd.user_list: /etc 디렉터리에 있습니다. 이 파일의 사용자 계정은 기본적으로 FTP 서버에 액세스할 수 없습니다. vsftpd .conf 구성 파일에서 userlist_enable=NO 옵션이 활성화된 경우에만 액세스가 허용됩니다.

vsftpd.conf: /etc/vsftpd 디렉터리에 있습니다. 사용자 로그인 제어, 사용자 권한 제어, 시간 초과 설정, 서버 기능 옵션, 서버 성능 옵션, 서버 응답 메시지 등 FTP 서버 구성을 사용자 정의합니다.

(1) 사용자 로그인 제어

anonymous_enable=YES, 익명 사용자가 로그인할 수 있도록 허용합니다.

no_anon_password=YES, 익명 사용자는 로그인 시 비밀번호를 입력할 필요가 없습니다.

local_enable=YES, 로컬 사용자가 로그인할 수 있도록 허용합니다.

deny_email_enable=YES, 특정 익명 이메일의 블랙리스트를 저장하는 파일을 생성하여 이러한 사람들이 DoS 공격을 사용하는 것을 방지할 수 있습니다.

banned_email_file=/etc/vsftpd.banned_emails,deny_email_enable 기능이 활성화되면 필수 이메일 블랙리스트 저장 경로(기본값은 /etc/vsftpd.banned_emails).

(2) 사용자 권한 제어

write_enable=YES, 전역 업로드 권한을 활성화합니다.

local_umask=022, 로컬 사용자가 업로드한 파일의 umask는 022로 설정됩니다(시스템 기본값은 077이며 일반적으로 022로 변경할 수 있습니다).

anon_upload_enable=YES는 익명 사용자에게 업로드 권한을 허용합니다. 분명히 write_enable=YES를 사용하려면 먼저 활성화해야 합니다. 동시에 ftp 사용자가 읽고 쓸 수 있는 디렉터리도 만들어야 합니다(앞서 언급한 대로 ftp는 익명 사용자를 위한 매핑된 사용자 계정입니다).

anon_mkdir_write_enable=YES, 익명 사용자가 디렉토리를 생성할 수 있는 권한을 갖도록 허용합니다.

chown_uploads=YES, 이 옵션을 활성화하면 익명으로 업로드된 파일의 소유자 사용자가 다른 사용자 계정으로 변경됩니다. 루트 계정을 익명으로 업로드된 파일의 소유자 사용자로 지정하지 않는 것이 좋습니다. 파일!

chown_username=whoever, chown_uploads=YES가 활성화되면 지정된 소유자 사용자 계정, 여기에 있는 누구든지 자연스럽게 적합한 사용자 계정으로 대체되어야 합니다.

chroot_list_enable=YES, 목록을 사용하여 자신의 디렉터리에서만 활성화할 수 있는 로컬 사용자를 제한할 수 있습니다. chroot_local_user=YES인 경우 이 목록에 지정된 사용자는 제한되지 않습니다.

chroot_list_file=/etc/vsftpd.chroot_list, chroot_local_user=YES인 경우 목록 저장 경로(chroot_local_user)를 지정합니다(기본값은 /etc/vsftpd.chroot_list).

nopriv_user=ftpsecure는 보안 사용자 계정을 지정하여 FTP 서버를 권한 없이 완전히 격리되고 독립적인 사용자로 사용할 수 있도록 합니다. 이는 vsftpd 시스템에 권장되는 옵션입니다.

async_abor_enable=YES, 이 옵션을 활성화하지 않는 것이 좋습니다. 그렇지 않으면 오류가 발생할 수 있습니다!

ascii_upload_enable=YES; ascii_download_enable=YES. 기본적으로 서버는 ASCII 모드 요청을 수락하는 척하지만 실제로는 이러한 요청을 무시합니다. 이를 통해 서버는 실제로 ASCII 모드 전송을 실현할 수 있습니다.

참고: ascii_download_enable 옵션을 활성화하면 악의적인 원격 사용자가 ASCII 모드에서 "SIZE/big/file"과 같은 명령을 사용하여 FTP 서버의 많은 양의 I/O 리소스를 소비할 수 있습니다.

이러한 ASCⅡ 모드 설정 옵션은 업로드와 다운로드로 구분되어 서비스 거부 없이 ASCⅡ 모드 업로드(스크립트 등 악성 파일 업로드로 인해 충돌이 발생하는 것을 방지할 수 있음)를 허용할 수 있습니다. 공격. 위험.

(3) 사용자 연결 및 시간 초과 옵션

idle_session_timeout=600, 이 기간 이후에 사용자가 아무런 조치도 취하지 않으면 기본 유휴 시간 초과를 설정할 수 있습니다. 서버 밖으로.

data_connection_timeout=120, 기본 데이터 연결 시간 초과를 설정합니다.

(4) 서버 로그 및 환영 메시지

dirmessage_enable=YES를 사용하면 디렉터리에 대한 표시 정보를 구성하고 각 디렉터리 아래에 있는 message_file 파일의 내용을 표시할 수 있습니다.

ftpd_banner=저런 FTP 서비스에 오신 것을 환영합니다. FTP 사용자가 서버에 로그인할 때 표시되는 환영 메시지를 사용자 정의할 수 있습니다.

xferlog_enable=YES, 활동 로그 업로드/다운로드 기능을 활성화합니다.

xferlog_file=/var/log/vsftpd.log, 로그 파일의 저장 경로와 파일 이름을 사용자 정의할 수 있습니다. 기본값은 /var/log/vsftpd.log입니다.

anonymous_enable=YES 익명 로그인 허용 local_enable=YES 로컬 사용자 로그인 허용

write_enable=YES 로컬 사용자 쓰기 권한 허용

local_umask=022 로컬 사용자 설정 파일 생성 마스크는 022입니다.

#anon_upload_enable=YES 이 설정을 사용하면 익명 사용자가 파일을 업로드할 수 있습니다.

#anon_mkdir_write_enable=YES 익명 사용자가 디렉터리를 작성하고 생성할 수 있습니다

dirmessage_enable=YES 디렉터리로 전환할 때 디렉터리에 있는 .message 숨김 파일의 내용을 표시합니다.

xferlog_enable=YES 업로드 및 다운로드 로그 활성화

connect_from_port_20=YES FTP 활성화 데이터 포트 연결 요청

#chown_uploads=YES 업로드 권한이 있는지 여부는 chown_username 매개변수로 지정됩니다.

#chown_username=파일 업로드 권한이 있는 사용자를 지정하는 사람. 이 매개변수는 chown_uploads와 함께 사용됩니다.

#xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES 표준 ftpd xferlog 로그 형식을 사용하십시오.

#idle_session_timeout=600 이 설정은 다음과 같습니다. Used in 사용자 세션은 10분 동안 유휴 상태이면 중단됩니다.

#data_connection_timeout=120 데이터 연결이 2분 동안 유휴 상태이면 중단됩니다.

#ascii_upload_enable=YES 활성화 업로드를 위한 ASCII 전송 방법

#ascii_download_enable=YES 다운로드를 위한 ASCII 전송 방법 활성화

#ftpd_banner=Welcome to blah FTP 서비스 서버에 연결한 후 메시지를 표시하도록 사용자 설정

#deny_email_enable=NO NO에 대한 이 매개변수의 기본값입니다. 값이 YES이면banned_email_file 매개변수에 지정된 파일에 나열된 이메일 주소를 가진 사용자의 로그인이 거부됩니다.

#banned_email_file=/etc/vsftpd.banned_emails 거부된 이메일 주소가 포함된 파일을 지정합니다.

#chroot_list_enable=YES 이후 로컬 사용자가 자신의 디렉터리 이외의 디렉터리로 전환할 수 없도록 설정합니다. 로그인. 기타 디렉터리

#chroot_list_file=/etc/vsftpd.chroot_list

#ls_recurse_enable=YES

pam_service_name=vsftpd PAM의 구성 파일 이름을 설정합니다. 인증 서비스 파일은 /etc/pam.d/에 저장됩니다.

userlist_enable=YES 이 구성은 userlist_deny=No가 추가된 경우 /etc/vsftpd.user_list에 지정된 사용자가 서버에 액세스할 수 없도록 허용합니다. /etc/vsftpd .user_list 파일의 사용자만 서버에 액세스할 수 있지만 다른 사용자는 서버에 액세스할 수 없습니다. userlist_enable=NO 및 userlist_deny=YES를 지정하면 /etc/vsftpd.user_list 파일에 지정된 사용자는 서버에 접근할 수 없으며, 다른 로컬 사용자는 서버에 접근할 수 있습니다.

listen=YES는 VSFTPD가 독립 작동 모드에서 시작됨을 나타냅니다.

tcp_wrappers=YES는 VSFTPD에서 TCP_Wrappers 원격 액세스 제어 메커니즘을 사용합니다. 기본값은 YES입니다.

3. 예를 들어 test라는 이름의 계정을 생성하고 구성합니다.

실제 상황에 따라 FTP를 구성한 후 FTP 계정을 생성하고 간단한 구성을 수행하는 예는 다음과 같습니다.

1. 계정 번호 테스트로 계정 만들기:

#mkdir /tmp/test //먼저 디렉터리 만들기

#adduser -d /tmp/test -g ftp - s /sbin/nologin 테스트 //-s /sbin/nologin은 시스템에 로그인하는 것을 방지합니다. -d는 사용자 디렉토리를 /opt/srsman으로 지정합니다. 즉, 계정은 ftp에만 로그인할 수 있지만 사용할 수는 없습니다. 시스템에 로그인합니다.

#passwd test

beinan 사용자의 비밀번호 변경.//다음 페이지에서는 새 비밀번호를 설정하라는 메시지가 표시됩니다.

새 비밀번호:

새 비밀번호 재입력:

passwd: 모든 인증 토큰이 성공적으로 업데이트되었습니다.

계정이 성공적으로 생성되었습니다!

2. 사용자 디렉터리를 제한하고 디렉터리를 더 높은 수준으로 변경하지 마세요.

/etc/vsftpd/vsftpd.conf를 수정하세요.

이 두 줄을 바꾸세요

#chroot_list_enable=YES

#chroot_list_file=/etc/vsftpd.chroot_list

댓글 삭제

chroot_list_enable=YES

chroot_list_file= /etc/vsftpd/chroot_list

새 파일 추가: /etc/vsftpd/chroot_list

콘텐츠 작성 시 제한해야 하는 사용자 이름:

test

vsftpd 다시 시작

# service vsftpd restart

3. 마지막으로 서버 전원을 켠 후 ftp 프로세스가 시작되는 것을 방지하기 위해 정전, 재시작 등을 수행하려면 부팅 파일에 추가하세요.

(1) /etc/rc.local 파일을 찾습니다.

(2) 파일을 열고 추가: 마지막 줄에 service vsftpd start

(3) 저장하고 종료합니다

4. "에 ftp://192.168.179.30(ftp 서버 IP 주소 입력)을 입력합니다. 내 컴퓨터'를 선택하고 설정에 들어갑니다. 좋은 계정으로 로그인하면 됩니다.

5. CMD-》ftp 192.168.1.2

Cd /soft

Put c:\sss.log //성공적으로 업로드할 수 있지만 VSFTP는 업로드할 수 없습니다. 지원 절대 디렉토리 업로드는 현재 디렉토리에만 업로드할 수 있습니다