❶ 如何在linux 伺服器上安裝 ftp
目錄:
一、Redhat/CentOS安裝vsftp軟體
二、Ubuntu/Debian安裝vsftp軟體
一、Redhat/CentOS安裝vsftp軟體
1.更新yum源
首先需要更新系統的yum源,便捷工具下載地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安裝vsftp
使用yum命令安裝vsftp
#yum install vsftpd -y
3.添加ftp帳號和目錄
先檢查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令創建帳戶,該命令指定了/alidata/www/wwwroot為用戶pwftp的家目錄,您可以自己定義帳戶名和目錄:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改該帳戶密碼:
#passwd pwftp
修改指定目錄的許可權
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
編輯vsftp配置文件,命令如下:
#vi /etc/vsftpd/vsftpd.conf
將配置文件中」anonymous_enable=YES 「改為 「anonymous_enable=NO」
取消如下配置前的注釋符號:
local_enable=YES
write_enable=YES
chroot_local_user=YES
保存修改,按ESC鍵,輸入:wq
5.修改shell配置
vi編輯/etc/shells,如果該文件里沒有/usr/sbin/nologin或者/sbin/nologin(具體看當前系統配置)則追加進去
6.啟動vsftp服務並測試登錄
使用命令啟動vsftp服務:
#service vsftpd start
然後用帳號pwftp測試下是否可以登陸ftp。目錄是/alidata/www/wwwroot。
二、Ubuntu/Debian安裝vsftp軟體
1.更新軟體源
首先需要更新系統的軟體源,便捷工具下載地址:http://help.aliyun.com/manual?spm=0.0.0.0.zJ3dBU&helpId=1692
2.安裝vsftp
使用apt-get命令安裝vsftp
#apt-get install vsftpd -y
3.添加ftp帳號和目錄
先檢查一下nologin的位置,通常在/usr/sbin/nologin或者/sbin/nologin下。
使用下面的命令創建帳戶,該命令指定了/alidata/www/wwwroot為用戶pwftp的家目錄,您可以自己定義帳戶名和目錄:
#useradd -d /alidata/www/wwwroot -s /sbin/nologin pwftp
修改該帳戶密碼:
#passwd pwftp
修改指定目錄的許可權
#chown -R pwftp.pwftp /alidata/www/wwwroot
4.配置vsftp
編輯vsftp配置文件,命令如下:
#vi /etc/vsftpd.conf
將配置文件中」anonymous_enable=YES 「改為 「anonymous_enable=NO」
取消如下配置前的注釋符號:
local_enable=YES
write_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
保存退出
編輯/etc/vsftpd.chroot_list文件,將ftp的帳戶名添加進去,保存退出
5.修改shell配置
vi編輯/etc/shells,如果該文件里沒有/usr/sbin/nologin或者/sbin/nologin(具體看當前系統配置)則追加進去
6.重啟vsftp服務並測試登錄
使用命令啟動vsftp服務:
#service vsftpd restart
然後用帳號pwftp測試下是否可以登陸ftp。目錄是/alidata/www/wwwroot。
❷ linux虛擬機怎麼搭建ftp伺服器
詳解Linux中搭建一個ftp伺服器。
ftp工作是會啟動兩個通道:
控制通道 , 數據通道
在ftp協議中,控制連接均是由客戶端發起的,而數據連接有兩種模式:port模式(主動模式)和pasv(被動模式)
PORT模式:
在客戶端需要接收數據時,ftp_client(大於1024的隨機埠)-PORT命令->ftp_server(21) 發送PORT命令,這個PORT命令包含了客戶端是用什麼埠來接收數據(大於1024的隨機埠),在傳送數據時,ftp_server將通過自己的TCP 20 埠和PORT中包含的埠建立新的連接來傳送數據。
PASV模式:
傳送數據時,ftp_client--PASV命令-->ftp_server(21) 發送PASV命令時,ftp_server自動打開一個1024--5000之間的隨機埠並且通知ftp_client在這個埠上傳送數據,然後客戶端向指定的埠發出請求連接,建立一條數據鏈路進行數據傳輸。
安裝ftp
#rpm -qa vsftpd 查看是否已經安裝
#yum install -y vsftpd
#rpm -ql vsftpd
/etc/logrotate.d/vsftpd. vsftpd的日誌文件
/etc/pam.d/vsftpd PAM認證文件
/etc/rc.d/init.d/vsftpd 啟動腳本
/etc/vsftpd vsftpd的配置文件存放的目錄
/etc/vsftpd/ftpusers 禁止使用vsftpd的用戶列表文件
/etc/vsftpd/user_list 禁止或允許使用vsftpd的用戶列表文件
/etc/vsftpd/vsftpd.conf 主配置文件
/etc/vsftpd/vsftpd_conf_migrate.sh vsftpd操作的一些變數和設置
/usr/sbin/vsftpd vsftpd的主程序
其他一些說明文檔和手冊文件略!
/var/ftp 匿名用戶主目錄
/var/ftp/pub 匿名用戶的下載目錄
#service vsftpd start
#chkconfig --level vsftpd
#chkconfig --level 2345 vsftpd on
2 匿名用戶的登錄名:ftp(anonymous) 密碼空 ,登錄的目錄為/var/ftp
用匿名用戶登錄的時候默認是只有下載的許可權,沒有上傳,創建和刪除的許可權:
#vim /etc/vsftpd/vsftpd.conf
anon_upload_enable=YES 上傳
anon_mkdir_write_enable=YES 創建
anon_other_write_enable=YES 刪除
#service vsftpd restart
為了安全應該禁止匿名用戶的登錄:
123456 #vim /etc/vsftpd/vsftpd.conf
anonymous_enable=NO
#anon_upload_enable=YES 上傳
#anon_mkdir_write_enable=YES 創建
#anon_other_write_enable=YES 刪除
#service vsftpd restart
3 創建一個直接登錄系統用戶來登錄ftp:
#useradd -s /sbin/nologin viong
#passwd viong
用戶具有 上傳 創建 下載 切換目錄
------------------------------------------------------------------
4 加強vsftp安全設置:
限制系統用戶鎖定在家目錄:
#vim /etc/vsftpd/vsftpd.conf
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list 限制更多的系統用戶,把需要限制的用戶加入/etc/vsftpd/chroot_list中即可
#touch /etc/vsftpd/chroot_list
#cut -d: -f 1 /etc/passwd >>/etc/vsftpd/chroot_list 將本地用戶都加入到chroot_list
限制重要系統用戶不能登錄ftp:
#cat /etc/vsftpd/ftpusers 默認已經添加了系統中一些比較重要的用戶
#echo "viong" >>/etc/vsftpd/ftpusers 此時viong不能登錄ftp
利用ftp用戶策略允許登錄ftp的系統用戶:
/etc/vsftpd/user_list 只有在這個文件中的用戶才能登錄系統:
#vim /etc/vsftpd/vsftpd.conf
#在userlist_enable=YES 的後面添加
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list
設置登錄ftp目標ip地址:用iptables設置
---------------------------------------
搭建支持SSL加密傳輸的vsftpd:
#openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem 生成證書
#vim /etc/vsftpd/vsftpd.conf
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES
rsa_cert_file=/etc/vsftpd/vsftpd.pem
下面是ssl參數一些定義,根據自己需求去修改:
ssl_enable=yes/no //是否啟用 SSL,默認為no
allow_anon_ssl=yes/no //是否允許匿名用戶使用SSL,默認為no
rsa_cert_file=/path/to/file //rsa證書的位置
dsa_cert_file=/path/to/file //dsa證書的位置
force_local_logins_ssl=yes/no //非匿名用戶登陸時是否加密,默認為yes
force_local_data_ssl=yes/no //非匿名用戶傳輸數據時是否加密,默認為yes
force_anon_logins_ssl=yes/no //匿名用戶登錄時是否加密,默認為no
force_anon_data_ssl=yes/no //匿名用戶數據傳輸時是否加密,默認為no
ssl_sslv2=yes/no //是否激活sslv2加密,默認no
ssl_sslv3=yes/no //是否激活sslv3加密,默認no
ssl_tlsv1=yes/no //是否激活tls v1加密,默認yes
ssl_ciphers=加密方法 //默認是DES-CBC3-SHA
#service vsftpd restart
用flashftp連接:
連接類型為:FTP使用公開SSL(驗證SSL)
地址:192.168.137.130:21
登錄類型:普通
用戶:viong
密碼:123
❸ 如何linux 安裝ftp伺服器
在創建FTP伺服器之有先命令: ps -ef |grep vsftpd
查一下系統有沒有安裝vsftpd這個伺服器,如果出現如下圖所示的界面說明沒有安裝。
然後再執行:yum install vsftpd -y
進行在線安裝vsftpd這個服務。
安裝成功以後需要把匿名登陸的這個功能關閉了。
使用命令: vim /etc/vsftpd/vsftpd.conf
然後在里成找到:
anonymous_enable=NO
然後再查看一下vsftpd這個服務有沒有啟動。
使用命令: chkconfig --list
如果你如下圖所示一樣沒有啟動。
沒有啟動使用啟動:chkconfig --level 35 vsftpd on
再接下來就是創建用戶名。
創建用戶名:useradd jingyan
再然後就是創建密碼。
命令:passwd jingyan
再輸入兩次密碼就可以了。
最後重啟一下服務:service vsftpd start
如果出現啟動失敗則可以使用:/etc/rc.d/init.d/vsftpd restart
成功鏈接FTP伺服器上。