【linux】vstp搭建
1.上傳VSTP檔案到/opt
2.上傳vsftpd 到/etc/pam.d
3.上傳vstpd到/etc/init.d
vstpd配置檔案:/opt/vsftpd/etc/vsftpd.conf
使用者新增:/opt/vsftpd/user_conf
新建一個使用者名稱為檔名的檔案,比如dsp
使用者名稱,密碼檔案:
/opt/vsftpd/etc/virtusers
單行賬號,雙行密碼
檢視密碼檔案命令:strings virtusers.db
生成密碼檔案資料庫: db_load -T -t hash -f virtusers virtusers.db
vstp重啟:service vsftpd restart
2.上傳vsftpd 到/etc/pam.d
- #%PAM-1.0
- auth sufficient /lib64/security/pam_userdb.so db=/opt/vsftpd/etc/virtusers
- account sufficient /lib64/security/pam_userdb.so db=/opt/vsftpd/etc/virtusers
- session optional pam_keyinit.so force revoke
- auth required pam_listfile.so item=user sense=deny file=/opt/vsftpd/etc/vsftpd.user_list onerr=succeed
- auth required pam_shells.so
- auth include system-auth
- account include system-auth
- session include system-auth
- session required pam_loginuid.so
- #!/bin/bash
- #
- # vsftpd This shell script takes care of starting and stopping
- # standalone vsftpd.
- #
- # chkconfig: - 60 50
- # description: Vsftpd is a ftp daemon, which is the program \
- # that answers incoming ftp service requests.
- # processname: vsftpd
- # config: /etc/vsftpd/vsftpd.conf
- # Source function library.
- . /etc/rc.d/init.d/functions
- # Source networking configuration.
- . /etc/sysconfig/network
- RETVAL=0
- prog="vsftpd"
- start() {
- # Start daemons.
- site=`basename /opt/vsftpd/etc/vsftpd.conf`
- echo -n $"Starting $prog for $site: "
- daemon /opt/vsftpd/sbin/vsftpd /opt/vsftpd/etc/vsftpd.conf &
- RETVAL=$?
- [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
- echo
- return $RETVAL
- }
- stop() {
- # Stop daemons.
- echo -n $"Shutting down $prog: "
- killproc $prog
- RETVAL=$?
- echo
- [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
- return $RETVAL
- }
- # See how we were called.
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart|reload)
- stop
- start
- RETVAL=$?
- ;;
- condrestart)
- if [ -f /var/lock/subsys/$prog ]; then
- stop
- start
- RETVAL=$?
- fi
- ;;
- status)
- status $prog
- RETVAL=$?
- ;;
- *)
- echo $"Usage: $0 {start|stop|restart|condrestart|status}"
- exit 2
- esac
- exit $RETVAL
- # The default compiled in settings are fairly paranoid. This sample file
- # loosens things up a bit, to make the ftp daemon more usable.
- # Please see vsftpd.conf.5 for all compiled in defaults.
- #
- # READ THIS: This example file is NOT an exhaustive list of vsftpd options.
- # Please read the vsftpd.conf.5 manual page to get a full idea of vsftpd's
- # capabilities.
- #
- # Allow anonymous FTP? (Beware - allowed by default if you comment this out).
- anonymous_enable=YES
- #
- # Uncomment this to allow local user to log in.
- local_enable=YES
- #
- # Uncomment this to enable any form of FTP write command.
- write_enable=YES
- #
- # Default umask for local users is 077. You may wish to change this to 022,
- # if your users expect that (022 is used by most other ftpd's)
- local_umask=022
- #
- # Uncomment this to allow the anonymous FTP user to upload files. This only
- # has an effect if the above global write enable is activated. Also, you will
- # obviously need to create a directory writable by the FTP user.
- #anon_upload_enable=YES
- #
- # Uncomment this if you want the anonymous FTP user to be able to create
- # new directories.
- #anon_mkdir_write_enable=YES
- #
- # Activate directory messages - messages given to remote users when they
- # go into a certain directory.
- dirmessage_enable=YES
- #
- # The target log file can be vsftpd_log_file or xferlog_file.
- # This depends on setting xferlog_std_format parameter
- xferlog_enable=YES
- #
- # Make sure PORT transfer connections originate from port 20 (ftp-data).
- connect_from_port_20=YES
- #
- # If you want, you can arrange for uploaded anonymous files to be owned by
- # a different user. Note! Using "root" for uploaded files is not
- # recommended!
- chown_uploads=NO
- #chown_username=whoever
- #
- # The name of log file when xferlog_enable=YES and xferlog_std_format=YES
- # WARNING - changing this filename affects /etc/logrotate.d/vsftpd.log
- xferlog_file=/opt/vsftpd/log/vsftp.log
- #
- # Switches between logging into vsftpd_log_file and xferlog_file files.
- # NO writes to vsftpd_log_file, YES to xferlog_file
- xferlog_std_format=YES
- #
- # You may change the default value for timing out an idle session.
- #idle_session_timeout=600
- #
- # You may change the default value for timing out a data connection.
- #data_connection_timeout=120
- #
- # It is recommended that you define on your system a unique user which the
- # ftp server can use as a totally isolated and unprivileged user.
- nopriv_user=nobody
- #
- # Enable this and the server will recognise asynchronous ABOR requests. Not
- # recommended for security (the code is non-trivial). Not enabling it,
- # however, may confuse older FTP clients.
- #async_abor_enable=YES
- #
- # By default the server will pretend to allow ASCII mode but in fact ignore
- # the request. Turn on the below options to have the server actually do ASCII
- # mangling on files when in ASCII mode.
- # Beware that on some FTP servers, ASCII support allows a denial of service
- # attack (DoS) via the command "SIZE /big/file" in ASCII mode. vsftpd
- # predicted this attack and has always been safe, reporting the size of the
- # raw file.
- # ASCII mangling is a horrible feature of the protocol.
- #ascii_upload_enable=YES
- #ascii_download_enable=YES
- #
- # You may fully customise the login banner string:
- #ftpd_banner=Welcome to blah FTP service.
- #
- # You may specify a file of disallowed anonymous e-mail addresses. Apparently
- # useful for combatting certain DoS attacks.
- #deny_email_enable=YES
- # (default follows)
- #banned_email_file=/etc/vsftpd/banned_emails
- #
- # You may specify an explicit list of local users to chroot() to their home
- # directory. If chroot_local_user is YES, then this list becomes a list of
- # users to NOT chroot().
- chroot_list_enable=YES
- # (default follows)
- chroot_list_file=/opt/vsftpd/etc/chroot_list
- #
- # You may activate the "-R" option to the builtin ls. This is disabled by
- # default to avoid remote users being able to cause excessive I/O on large
- # sites. However, some broken FTP clients such as "ncftp" and "mirror" assume
- # the presence of the "-R" option, so there is a strong case for enabling it.
- #ls_recurse_enable=YES
- #
- # When "listen" directive is enabled, vsftpd runs in standalone mode and
- # listens on IPv4 sockets. This directive cannot be used in conjunction
- # with the listen_ipv6 directive.
- listen=YES
- #
- # This directive enables listening on IPv6 sockets. To listen on IPv4 and IPv6
- # sockets, you must run two copies of vsftpd whith two configuration files.
- # Make sure, that one of the listen options is commented !!
- #listen_ipv6=YES
- #local_root=/ynd20_ftp
- pam_service_name=vsftpd
- userlist_enable=YES
- userlist_file=/opt/vsftpd/etc/vsftpd.user_list
- tcp_wrappers=YES
- chroot_local_user=YES
- user_config_dir=/opt/vsftpd/user_conf
- guest_enable=YES
- guest_username=pso(使用者)
- virtual_use_local_privs=YES
- anon_other_write_enable=NO
- cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,RNFR,RNTO,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP
- ,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST
新建一個使用者名稱為檔名的檔案,比如dsp
- local_root=/eInvoice #共享目錄
- anonymous_enable=NO
- write_enable=YES
- local_umask=022
- anon_upload_enable=NO
- anon_mkdir_write_enable=NO
- idle_session_timeout=600
- data_connection_timeout=120
- max_clients=10
- max_per_ip=5
- local_max_rate=50000 #上傳速度 50000=50KB/s
- cmds_allowed=ABOR,CWD,LIST,MDTM,MKD,NLST,PASS,PASV,PORT,PWD,QUIT,RETR,RMD,RNFR,RNTO,SITE,SIZE,STOR,TYPE,USER,ACCT,APPE,CDUP
- ,HELP,MODE,NOOP,REIN,STAT,STOU,STRU,SYST,DELE
/opt/vsftpd/etc/virtusers
單行賬號,雙行密碼
- dsp
- dsp@123
生成密碼檔案資料庫: db_load -T -t hash -f virtusers virtusers.db
vstp重啟:service vsftpd restart
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31442725/viewspace-2138525/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【LINUX】LINUX PHP搭建LinuxPHP
- linux搭建FabricLinux
- Linux OpenGrok搭建Linux
- Linux上搭建meterSphereLinux
- Linux搭建Java環境LinuxJava
- linux ftp服務搭建LinuxFTP
- linux搭建webapp實戰LinuxWebAPP
- linux搭建harbor與使用Linux
- Linux 下搭建 SVN 服務Linux
- Availability Group On Linux 搭建後記AILinux
- Linux(二十)搭建JavaEE環境LinuxJava
- Linux學習環境搭建Linux
- Linux下搭建seafile(pro版)Linux
- Linux(centos)搭建SVN倉庫LinuxCentOS
- linux監控平臺搭建Linux
- Linux系統環境搭建Linux
- Linux下搭建ZooKeeper叢集Linux
- Linux搭建開發環境Linux開發環境
- 快速搭建 Linux(LNMP + Linux 安裝 + 環境配置)LinuxLNMP
- 【Linux】Linux - CenterOs 7.9中搭建Nacos 2.xLinuxROS
- Linux搭建私有軟體倉庫Linux
- Linux下用nexus搭建maven私服LinuxMaven
- Linux上搭建並使用ffmpeg(Java)LinuxJava
- linux ftp服務的搭建配置LinuxFTP
- linux如何搭建sftp伺服器LinuxFTP伺服器
- Linux下的node.js搭建LinuxNode.js
- Linux下搭建Jenkins持續整合LinuxJenkins
- 使用Linux寶塔搭建專案Linux
- Linux中Mysql的叢集搭建LinuxMySql
- 在 windows 上搭建一臺 LinuxWindowsLinux
- Kali Linux的Pwn環境搭建Linux
- Linux——搭建Apache(httpd)伺服器LinuxApachehttpd伺服器
- Linux——搭建Samba(CIFS)伺服器LinuxSamba伺服器
- linux開發環境搭建(ubuntu)Linux開發環境Ubuntu
- linux shell快速搭建NSQ叢集Linux
- Linux下信用盤SGWIN程式搭建PHP+Nginx環境搭建LinuxPHPNginx
- LINUX(紅帽8)搭建https服務LinuxHTTP
- Linux/Go環境搭建, HelloWorld執行LinuxGo
- Linux篇---ftp伺服器的搭建LinuxFTP伺服器