1. 程式人生 > >如何使用阿里雲主機(Ubuntu)搭建FTP伺服器(超詳細)

如何使用阿里雲主機(Ubuntu)搭建FTP伺服器(超詳細)

由於需要上傳程式碼檔案,又不能直接給所有SSH來連線,於是只能搭建個ftp伺服器了,記錄整個過程。

1、安裝vsftpd

sudo apt-get install vsftpd

2、sudo vi /etc/vsftpd.conf並寫入如下

# Example config file /etc/vsftpd.conf
#
# 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.
listen=NO
listen_ipv6=YES

# Allow anonymous FTP? (Disabled by default).
anonymous_enable=NO

# Uncomment this to allow local users 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

# Activate directory messages - messages given to remote users when they
# go into a certain directory.
dirmessage_enable=YES
#
# If enabled, vsftpd will display directory listings with the time
# in  your  local  time  zone.  The default is to display GMT. The
# times returned by the MDTM FTP command are also affected by this
# option.
use_localtime=YES

#
# Activate logging of uploads/downloads.
xferlog_enable=YES
#
# Make sure PORT transfer connections originate from port 20 (ftp-data).
connect_from_port_20=YES

# You may override where the log file goes if you like. The default is shown
# below.
xferlog_file=/var/log/vsftpd.log
#
# If you want, you can have your log file in standard ftpd xferlog format.
# Note that the default log file location is /var/log/xferlog in this case.
xferlog_std_format=YES


# You may fully customise the login banner string:
ftpd_banner=Welcome to FTP service.


# 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().
# (Warning! chroot'ing can be very dangerous. If using chroot, make sure that
# the user does not have write access to the top level directory within the
# chroot)
chroot_local_user=YES
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd.chroot_list

# This option should be the name of a directory which is empty.  Also, the
# directory should not be writable by the ftp user. This directory is used
# as a secure chroot() jail at times vsftpd does not require filesystem
# access.
secure_chroot_dir=/var/run/vsftpd/empty
#
# This string is the name of the PAM service vsftpd will use.
# pam_service_name=vsftpd
pam_service_name=ftp

# This option specifies the location of the RSA certificate to use for SSL
# encrypted connections.
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO

#
# Uncomment this to indicate that vsftpd use a utf8 filesystem.
utf8_filesystem=YES                                          

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

3、重啟服務

systemctl restart vsftpd.service

設定開機自啟動

systemctl enable vsftpd.service

4、建立共享資料夾

mkdir /home/myftp

給這個資料夾所有許可權

chmod 777 -R /home/myftp

5、建立使用者byk和密碼

sudo useradd -d /home/myftp/ -s /bin/bash byk

設定密碼

sudo passwd byk

輸入密碼,然後

sudo vi /etc/vsftpd.chroot_list把使用者byk寫入,重啟服務。

注意,想要put檔案必須給這個檔案所有許可權,不然會報錯,put是ftp的命令,即上傳檔案的意思,具體命令使用請自查。

6、開放阿里雲主機ftp執行的埠

netstat -atunp | grep ftp檢視ftp埠為21,於是去開放21埠。

7、使用windows遠端連線

開啟internet選項->高階->使用被動FTP去掉勾,儲存

在檔案瀏覽器位址列輸入ip

輸入密碼

ok,可以愉快地使用ftp了。