linux下搭建ftp伺服器

2021-10-07 22:01:41 字數 3138 閱讀 1896

如果是ubuntu環境下的話,安裝是很簡單的,只需輸入如下命令:

先更新,不然可能無法安裝

apt update
安裝

sudo apt install vsftpd
#開啟ftp服務

sudo service vsftpd start

#檢視ftp的狀態

service vsftpd status

建立使用者

sudo useradd -m -d /home/zhangsan zhangsan
為使用者新增密碼

sudo passwd zhangsan
更改使用者的許可權

#使用者zhangsan 不能telnet 只能ftp

sudo usermod -s /sbin/nologin zhangsan

#使用者zhangsan恢復許可權

sudo usermod -s /sbin/bash zhangsan

sudo usermod -d /home/alic/share zhangsan #更改share使用者的主目錄

安裝完成後可以察看下服務狀態(其實安裝完成了就會提示已經在跑了)

sudo service vsftpd status

其實我用到的檔案只有三個

+  1. /etc/vsftp.conf(主配置檔案)

+  2. /etc/vsftp.chroot_list(可訪問使用者列表,這個在我這裡貌似不是已有的,我是手建的,這個察看上面那個配置檔案就會發現,配置檔案裡面有關聯)

+  3. /etc/pam.d/vsftpd(裡面有個選項需要修改,這個需要簡單配置一下,否則會出現「530 login incorrect」的錯誤)

下面開始逐個檔案說明:

+  1./etc/vsftpd.config 裡面的注釋比較多,還很詳細,這裡就不一一枚舉了,只寫上我修改的

anonymous_enable=no(是否允許匿名登陸)

local_enable=yes(是否允許本地登陸)

write_enable=yes(設定ftp可寫)

//chroot (change root)

chroot_local_user=yes(設定成yes後,加入vsftpd.chroot_list中的使用者可以通過ftp訪問)

chroot_list_enable=yes(啟用下面這個vsftpd.chroot_list)

chroot_list_file=/etc/vsftpd.chroot_list(指定一下list,這是檔案預設的,但是並不存在,需要手動弄一下)

pam_service_name=vsftpd(這裡留個標記,在一定情況下會出現530的問題,留到後面錯誤去講)

+  2.修改配置檔案,增加使用者

sudo vi /etc/vsftpd.chroot_list
這個檔案比較簡單,之需要將允許ftp登陸的使用者名稱放進來就行,乙個一行,我之前一直比較憤怒,網上在這裡就這麼說一下,都沒個例子,這叫勞資怎麼填,其實很簡單,比如像這樣:

user

user2

user22

由於說到了新增使用者,其實是這樣的,你可以使用本地已經存在的使用者,但是作為乙個淡定的ftp伺服器,是不應該把本機的東西都共享給外面的,最好的方法就是再建立個使用者專門給ftp使用

所以這裡來搞一下使用者的問題

這裡還要留個標記,關於建立使用者之後,一些情況下可能會出現個500的錯誤,留到後面錯誤去講

好了,現在察看下建立結果,發著光的那條

user@userserver:/home$ ll

總用量 xx

drwxr-xr-x 7 root root 4096 4月 24 11:27 ./

drwxr-xr-x 25 root root 4096 4月 9 09:47 ../

drwxr-xr-x 2 heihei heihei 4096 4月 24 11:27 heihei/

drwxr-xr-x 6 haha haha 4096 2月 15 18:08 haha/

drwxr-xr-x 75 username username 4096 4月 24 13:18 username/

+ 3./etc/pam.d/vsftpd

這個檔案如下:

auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed

不要在意那個deny,他不應該是allow,他不是不讓你使用,淡定..

其實有好多方法登陸的

ip位址用你的..

那個username應該是當前的使用者,不要管他,除非和ftp使用者是乙個;

user就是你的ftp使用者,先前建立的那個,要是和當前使用者是乙個的話直接回車過去;

passwd輸入;

搞定

user@userserver:/home$ ftp 192.168.1.123

connected to 192.168.1.123.

(vsftpd 2.3.5)

name (192.168.1.123:username): user

please specify the password.

password:

login successful.

remote system type is unix.

using binary mode to transfer files.

ftp>

在位址列輸入(your ip address):  

終於到了這裡,事情從不會那麼容易就讓你直接完成,就那麼幾個問題,可能不經意見就中了套..

話說這個問題貌似幾個情況都會出現:

sudo chmod 755 userdir/

LINUX下搭建FTP伺服器

1.作業系統環境 檢視作業系統核心 root rac1 uname a linux rac1 2.6.32 220.el6.x86 64 1 smp wed nov 9 08 03 13 est 2011 x86 64 x86 64 x86 64 gnu linux 檢視作業系統發行版本 root ...

Linux下搭建FTP伺服器

接到的工作任務是,開啟21埠的ftp服務,之前21和22都是可以使用的,現在21不可以使用了 之前進行了伺服器的公升級 22上的服務是sftp,21是ftp,二者之間的區別暫不進行整理 有待補充.使用如下命令 rpm qa grep vsftpd可以檢測出是否安裝了vsftpd軟體,如果沒有安裝,使...

LINUX下搭建FTP伺服器

一般在各種linux的發行版中,預設帶有的ftp軟體是vsftp,從各個linux發行版對vsftp的認可可以看出,vsftp應該是一款不錯的ftp軟體。搭建linux ftp伺服器的步驟如下 1 檢查vsftpd軟體是否安裝 使用如下命令可以檢測出是否安裝了vsftpd軟體,rpm qa grep...