【Linux搭建創建FTP服務器】---完美解決 - 費元星
阿新 • • 發佈:2018-01-15
lib 組織 ensp security system 改密 裝機 用戶添加 def
配置大紅字文件置頂:
然後再查看一下vsftpd這個服務有沒有啟動。
使用命令: chkconfig --list
如果你如下圖所示一樣費元星版權Q【9715234】沒有啟動。
沒有啟動使用啟動:chkconfig --level 35 vsftpd on
環境:ftp為vsftp。被限制用戶名為test。被限制路徑為/home/test
建用戶:在root用戶下:
useradd -d /home/test test //增加用戶test,並制費元星版權Q【9715234】定test用戶的主目錄為/home/test
如果目錄已經存在,會有提示,但是不影響用戶的權限登陸
passwd test //為test設置密碼
更改用戶相應的權限設置:
usermod -s /sbin/nologin test //限定用戶test不能telnet,只能ftp
usermod -s /sbin/bash test //用戶test恢復正常
usermod -d /test test //更改用戶test的主目錄為/test
限制用戶只能訪問/home/test,不能訪問其他路徑
修改/etc/vsftpd/vsftpd.conf如下:
chroot_list_enable=YES //限制訪問自身目錄
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
另外還有一些基礎增強選項
在文件末尾加如下的設置:
# new added by netseek
listen_port=5021 ;命令通道端口,默認為21
listen_data_port=5020 ;數據通道端口,默認為20
pasv_enable=YES ;允許被動模式
pasv_min_port=10000 ;被動模式使用端口範圍
pasv_max_port=10010
local_max_rate=200000 ;用戶寬帶限制
chroot_local_user=YES ;禁止用戶離開主目錄
listen_address=192.168.0.21 ;讓他監聽ip:192.168.0.21
編輯 vsftpd.chroot_list文件,將受限制的用戶添加進去,每個用戶名一行
改完配置文件,不要忘記重啟vsFTPd服務器
[root@linuxsir001 root]# /etc/init.d/vsftpd restart
如果需要允許用戶修改密碼,但是又沒有telnet登錄系統的權限:
usermod -s /usr/bin/passwd test //用戶telnet後將直接進入改密界面
最後重啟一下服務:service vsftpd start
如果出現啟動失敗則可以使用:/etc/rc.d/init.d/vsftpd restart
成功鏈接FTP服務器上。
------------------------------------------------------------------------------------------------
遇到的問題:
VSFTP中登錄提示 500 OOPS: cannot change directory
首先的解決方法是:
(1)[root@xuyuntao ~]# setsebool -P ftpd_disable_trans 1
Boolean ftpd_disable_trans is not defined (這裏我會有這個提示)
[root@xuyuntao ~]# getsebool -a |grep ftp_home
ftp_home_dir --> on (如果此處是off的話執行下邊的命令)
[root@xuyuntao ~]#setsebool -P ftp_home_dir 1
執行完之後再去登陸試試。
(2)[root@xuyuntao ~]# setsebool -P ftpd_disable_trans 1
如果此命令執行成功的話,
[root@xuyuntao ~]service vsftpd restart
再試試
(3)如果還不行的話就試試下邊的方式吧
如果還是不行的話再使用下面完全方式:
[root@linux115 vsftpd]# setsebool allow_ftpd_full_access 1
[root@linux115 vsftpd]# setsebool allow_ftpd_use_cifs 1
[root@linux115 vsftpd]# setsebool allow_ftpd_use_nfs 1
[root@linux115 vsftpd]# setsebool -P ftp_home_dir 1
[root@linux115 vsftpd]# setsebool httpd_enable_ftp_server 1
[root@linux115 vsftpd]# setsebool tftp_anon_write 1
[root@linux115 vsftpd]# service vsftpd restart
這是我遇到的問題,僅供大家參考。
防火墻遇到的問題2:
臨時的解決方法是執行如下命令:
[root@localhost soft]# modprobe ip_nat_ftp
長久方案:
但當你重新啟動服務器則iptables規則失效,又會出現相同的情況,所以我們需要修改/etc/sysconfig/iptables-config文件,
[root@localhost soft]# vi /etc/sysconfig/iptables-config
我們需要把
IPTABLES_MODULES=""
修改為:
IPTABLES_MODULES="ip_nat_ftp"
這樣重啟服務器之後就不必再每次都執行mobprobe啦。
遇到的的問題3:
ftpuser登錄ftp後上傳文件或新建目錄,如果出現“550 create directory operation failed”
是SELinux(Security-Enhanced Linux----是美國國家安全局對於強制訪問控制的實現, 是Linux 上最傑出的新安全子系統.)安裝機制搞的鬼.只要disable SELinux就可以了.
PS: 關閉SELinux方法
[root@CenOS ~]# vim /etc/selinux/config
將 SELINUX=XXX -->XXX 代表級別
改為
SELINUX=disabled
重啟就OK了!
問題4:
解決vsftpd連接錯誤425 Security: Bad IP connecting
www.111cn.net 更新:2014-03-18 編輯:mengchu9 來源:轉載
今天在linux機器上安裝了一個vsftpd服務器,結果在連接時出現425 Security: Bad IP connecting錯誤了,經過一上午的搜索總結出一此問題解決辦法。
錯誤提示
425 Security: Bad IP connecting
主要是需要在/etc/vsftpd/vsftpd.conf文件中添加如下一行:
pasv_promiscuous選項參數說明:
此選項激活時,將關閉PASV模式的安全檢查。該檢查確保數據連接和控制連接是來自同一個IP地址。小心打開此選項。此選項唯一合理的用法是存在於由安全隧道方案構成的組織中。默認值為NO。
合理的用法是:在一些安全隧道配置環境下,或者更好地支持FXP時(才啟用它)。
如果不行,將Subsystem sftp /usr/libexec/openssh/sftp-server
改為Subsystem sftp internal-sftp
systemctl restart sshd.service
Linux下如何修改用戶默認目錄
1、切換到root用戶,直接修費元星版權Q【9715234】改/etc/passwd文件,找到你的用戶名你一行,如下圖所示修改路徑,然後保存即可。
2、切換到root用戶,使用usermod命令,例如usermod -d /tmp test (test為你的用戶名),使用該命令請確保該用戶下沒有運行的軟件或進程
最後切換到普通賬戶,就會看到費元星版權Q【9715234】當前默認目錄已經更改了。
費元星版權Q【9715234】
FTP允許root登錄
[root@localhost vsftpd]# cat ftpusers
# Users that are not allowed to login via ftp
#root
[root@localhost vsftpd]# cat user_list
4.5KB
useradd -d /home/bai_du -s /sbin/nologin bai_du
修改訪問權限:
usermod -d /home/webroot/fourcar.diliulian.com/ -s /sbin/nologin fourcar
- 在創建FTP服務器之有先命令: ps -ef |grep vsftpd
代碼如下 | 復制代碼 |
pasv_promiscuous=YES service vsftpd restart |
【Linux搭建創建FTP服務器】---完美解決 - 費元星