samba,ftp服務器,實戰、

搭建公司的linux下的文件服務器linux

 
 
搭建公司的linux下的文件服務器
1.       查詢軟件包是否安裝(關係到samba 服務功能是否能用)
2.       啓動smb 服務
3.       建立用戶設置本地密碼並添加到smb 服務器上再次設置smb 的密碼(本地密碼必須設置不然會登陸不上去)
4.       在客戶機上登陸
查詢smb 軟件包是否安裝。若沒有安裝則將rhel.5.0 光盤掛載到一個目錄下而後執行rpm –ivh / 掛在目錄/Server/samba-3.0.23c-2.i386.rpm 便可
開啓服務。用samba 服務確定得先將smb 服務開啓。默認是必需要用戶驗證的。因此還要添加本地用戶。設置本地密碼。並設置smb 的用戶名和密碼。Smbpasswd –a mafei 是指設置smb 的密碼。-a 是指將用戶加入到samba 服務器裏面默認都是能夠登陸的而且權限都是最大的。若是不想讓用戶使用過大的權限的話。修改Linuxsamba 服務器的用戶目錄的權限。或者設置smb 本地用戶的權限便可。
 

[root@server ~]# rpm -qa | grep smb
gnome-vfs2-smb-2.16.2-4.el5
pam_smb-1.1.7-7.2.1
[root@server ~]# /etc/rc.d/init.d/smb restart
關閉 SMB 服務:                                             [ 失敗]
關閉 NMB 服務:                                             [ 失敗]
啓動 SMB 服務:                                             [ 肯定]
啓動 NMB 服務:                                             [ 肯定]
[root@server ~]# adduser mafei
[root@server ~]# passwd mafei
Changing password for user mafei.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.
[root@server ~]# smbpasswd -a mafei
New SMB password:
Retype new SMB password:
Added user mafei.

在客戶機上驗證(必定要保證samba 服務器和客戶機的連通)
 

 

 
修改samba 服務的配置文件
 

[root@server ~]# vi /etc/samba/smb.conf
………………………
 
# ----------------------- Standalone Server Options ------------------------
#
# Security can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.
 
        security = user
        passdb backend = tdbsam
…….
;        printable = no
;        write list = +staff
 
修改配置文件。建立公用目錄。將安全性改成共享。並開啓guest 用戶。重啓服務使配置 生效。
在客機上登陸後就不用輸入密碼直接登陸能夠看到公用文件夾了。默認爲只讀。若是想讓公用文件夾添加寫入功能的話。在配置文件中的公用文件夾目錄內添加一條writable=yes 便可
並設置Linuxsamba 服務器的公用文件夾目錄的本地權限爲其餘寫入(chmod 007 /etc/public )便可
 
修改後的文件
[root@server ~]# mkdir /etc/public
[root@server ~]# vi /etc/samba/smb.conf
#
 
# ----------------------- Standalone Server Options ------------------------
#
# Security can be set to user, share(deprecated) or server(deprecated)
#
# Backend to store user information in. New installations should
# use either tdbsam or ldapsam. smbpasswd is available for backwards
# compatibility. tdbsam requires no further configuration.
 
        security = share
        guest ok = yes
        passdb backend = tdbsam
 
 
[public]
        path = /etc/public
        public = yes
[root@server ~]# service smb restart
關閉 SMB 服務:                                             [ 肯定]
關閉 NMB 服務:                                             [ 肯定]
啓動 SMB 服務:                                             [ 肯定]
啓動 NMB 服務:                                             [ 肯定]
 

 
 
 
查詢vsftpd 軟件包是否安裝啓動vsftpd 服務便可。
 

[root@server ~]# rpm -qa | grep vsftpd
vsftpd-2.0.5-16.el5
[root@server ~]# service vsftpd restart
關閉 vsftpd                                               [ 肯定]
vsftpd 啓動 vsftpd                                     [ 肯定]

 
搭建的匿名ftp 服務器默認只有只讀權限不能作任何設置。
若是想讓匿名用戶上傳的話則直接找到anon_upload_enable=YES 把註釋去掉便可

[root@server ~]# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root):
530 Permission denied.
Login failed.
ftp> mkdir /aa
530 Please login with USER and PASS.
ftp> bye
221 Goodbye.
[root@server ~]# ls /var/ftp/pub/

 
在文件中查找指定文字
在查看文件過程當中非插入模式下輸入    / 要查詢的部分匹配文字

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
/anon_upload_enable                // 在查看文件中輸入/ 要查找的文字便可

 
設置anon_max_rate=1 匿名用戶的最大速度爲1 字節( 爲了看效果) 重啓服務使配置生效
 

[root@server ~]# vi /etc/vsftpd/vsftpd.conf
 
anon_upload_enable=YES
anon_max_rate=1
 
[root@server ~]# service vsftpd restart
關閉 vsftpd                                               [ 肯定]
vsftpd 啓動 vsftpd                                     [ 肯定]

 

 
 
搭建公司本身的ftp服務器每一個員工有
本身的賬號密碼的。
修改ftp 配置文件添加
能讓本地用戶登陸這條配置    local_enable=YES

[root@server ~]# vi /etc/vsftpd/vsftpd.conf
# Uncomment this to allow local users to log in.
local_enable=YES

若是不想讓匿名用戶登陸的話直接修改配置文件中的anonymous_enable=NO 便可意思爲禁止匿名用戶登陸                     
登陸時會提示輸入用戶名和密碼。不然禁止登錄
 

 

 

 

 
在客戶機上建立目錄
在服務器上查看在宿主目錄下

[root@server ~]# ls /home/mafei
fei ma

 
說白了也是爲了公司服務器的安全考慮。若是同時有多我的同時上傳和下載。服務器適應不過來直接冒煙那。。。
修改配置文件添加一條local_max_rate=1 限制最大傳輸率爲1 字節(爲了實驗須要。,。)
重啓服務使配置生效

 
[root@server ~]# vi /etc/vsftpd/vsftpd.conf
local_enable=YES
local_max_rate=1
 
[root@server ~]# service vsftpd restart
關閉 vsftpd                                               [ 肯定]
vsftpd 啓動 vsft                                          [ 肯定]

 

1.       讓部分用戶不能登陸ftp 服務器.
其實就是配置一條userlist_enable=YES 使user_list 文件起做用,( 專業一點生效)( 若是不配置的話那user_list 中配置什麼都不起做用. 查錯有時候就是在這裏)
在配置一條userlist_deny=YES 就是禁止user_list 文件中的用戶登陸 便可實現禁止部分用戶的禁止登陸服務器. 不想讓哪些用戶登陸服務器將哪些用戶寫到user_list 文件中就OK ( 有點詛咒的意思啊,)
2.       服務器只讓部分用戶登陸
其實也同樣. 配置一條userlist_enable=YES 先讓user_list 文件生效
 
/etc/vsftpd/ 目錄下有

[root@server ~]# cd /etc/vsftpd
[root@server vsftpd]# ls
ftpusers user_list vsftpd.conf vsftpd_conf_migrate.sh

 
Ftpusers user_list 文件中均包含一份ftp 用戶名的列表兩個文件雖然都用於ftp 用戶的控制,可是具體做用存在一些差異。
Ø Ftpusers 文件:該文件中抱哈的用戶賬號將被禁止登陸vsftpd 服務器無論該用戶是否在user_list 中出現。
Ø User_list 文件: 該文件中包含的用戶賬號可能被禁止登陸。也可能被容許登陸,具體在主配置文件vsftpd.conf 中決定。當存在userlist_enable=yes 的配置項時。User_list 文件生效,若是配置userlist_deny=yes 則僅禁止列表中的用戶賬號登陸,若是配置userlist_deny=no 則容許列表中的用戶賬號登陸
Ftpusers 文件爲vsftpd 服務器提供了一份用於禁止登陸的ftp 用戶列表,而user_list 文件提供了一份可靈活控制的ftp 用戶列表,兩者相互結合,爲ftp 用戶控制提供了良好的基礎
 
默認狀況下ftpusers 文件中的用戶都是禁止登陸的。而userlist 中的用戶都是能夠登陸的。若是想禁止哪些用戶登陸的話直接將用戶名添加到ftpusers 文件中便可。
本案例中創建用戶mafei Ma 要求mafei 能登陸ma 不能登陸

[root@server vsftpd]# adduser ma
[root@server vsftpd]# passwd ma
Changing password for user ma.
New UNIX password:
BAD PASSWORD: it is WAY too short
Retype new UNIX password:
passwd: all authentication tokens updated successfully.

ma 用戶添加到ftpusers 文件中便可實現用戶的非登錄

[root@server vsftpd]# vi ftpusers
# Users that are not allowed to login via ftp
root
bin
nobody
ma

mafei ma 兩個用戶分別登陸驗證效果
mafei 登陸後能夠登陸成功。而 ma 登陸不成功進入匿名用戶模式

[root@server vsftpd]# ftp localhost           // 登陸本地服務器
Connected to localhost.localdomain.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): mafei                      // 用用戶mafei 登陸並輸入密碼
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd                                     // 查看當前所在目錄驗證登陸成功
257 "/home/mafei"
ftp> bye                                      // 退出ftp 服務器的登陸
221 Goodbye.
[root@server vsftpd]# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): ma
331 Please specify the password.
Password:
530 Login incorrect.
Login failed.
ftp> pwd
530 Please login with USER and PASS.
查看配置文件
本配置中user_llist_enable=yes 因此在user_list 中的用戶均可以登陸
Ftpusers 文件
[root@server ~]# vi /etc/vsftpd/vsftpd.confpam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

 
服務器只能讓mafei 登陸其餘用戶都不能登陸。 ( 必定注意設置以前必定要保證全部用戶可以正常登陸服務器系統才行啊)
配置服務器只讓指定用戶登陸的話就直接配置使userlist 中的用戶才能登陸便可
具體配置以下:
mafei 用戶添加到user_list 中先設置userlist_enable=YES 使user_list 文件生效. 在設置userlist_deny=NO, 使僅容許列表中的用戶帳戶登陸
 

 
[root@server vsftpd]# vi user_list
operator
games
nobody
mafei
 
[root@server vsftpd]# vi vsftpd.conf
pam_service_name=vsftpd
userlist_enable=YES                   // 配置使user_list 文件生效
userlist_deny=NO                        // 配置僅容許列表中的用戶帳戶登陸
tcp_wrappers=YES
 
[root@server vsftpd]# service vsftpd restart
關閉 vsftpd                                               [ 失敗]
vsftpd 啓動 vsftpd                                     [ 肯定]
 

 
驗證效果. 只有mafei 用戶可以登陸上ftp 系統中.ma 用戶不能登陸ftp 系統

[root@server vsftpd]# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): mafei                                 // 用戶 mafei 能夠成功登陸
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/home/mafei"
ftp> bye
221 Goodbye.
[root@server vsftpd]# ftp localhost
Connected to localhost.localdomain.
220 (vsFTPd 2.0.5)
530 Please login with USER and PASS.
530 Please login with USER and PASS.
KERBEROS_V4 rejected as an authentication type
Name (localhost:root): ma                   // ma 登陸直接被拒絕了
530 Permission denied.
Login failed.
ftp> pwd
530 Please login with USER and PASS.
ftp> bye
221 Goodbye.

 
 
 
 
 

做用範圍
配置項及示範
含義說明
匿名用戶
Anonymous_enable=YES
是否容許匿名訪問
Anon_umask=022
設置匿名用戶所上傳文件的默認權限掩碼值
Anon_upoload_enable=YES
是否容許匿名用戶上傳文件
Anon_mkdir_write_enable=YES
是否容許匿名用戶有建立目錄的寫入權限
Anon_other_write_enable=YES
是否容許匿名用戶有其餘寫入權限,。如對文件更名。覆蓋。以及刪除文件等權限
Anon_max_rate=0
顯示匿名用戶的最大傳輸速率(0 爲無限制)單位爲字節
Anon_root=/var/ftp
設置匿名用戶的ftp 根目錄(默認爲/var/ftp 目錄下)
本地用戶
Local_enable=YES
是否容許本地系統用戶訪問
Local_umask=022
設置本地用戶所上傳文件的默認權限掩碼值
Local_root=/var/ftp
設置本地用戶的ftp 根目錄(默認爲本地用戶的宿主目錄)
Local_max_rate=0
限制本地用戶的最大傳輸速率(0 爲無限制) ,單位爲字節
Chroot_local_user=YES
是否將ftp 本地用戶禁錮在宿主目錄內(即只能在本身的目錄下)
全局配置
Listen=YES
是否以獨立運行的方式監聽服務
Listen_port=21
設置監聽ftp 服務的端口號
Write_enable=YES
啓用任何形式的寫入權限(如上傳。刪除文件等)都須要啓用此功能
Download_enable=YES
是否容許下載文件(創建僅限於瀏覽上傳的ftp 服務器時的內容)
Dirmessage_enable=YES
用戶切換進入目錄時顯示的.message 文件(若是存在)的內容
Xferlog_enable=YES
啓用xferlog 日誌。默認記錄到/var/log/xferlog 文件
Xferlog_std_format=YES
啓用標準的xferlog 日誌格式,若禁用此項將使用vsftpd 本身的日誌格式
Connetc_from_port_20=YES
容許服務器主動模式(從20 端口創建數據鏈接)
Pasv_enable=YES
容許被動模式鏈接
Pasv_max_port=24600
設置用於被動模式的服務器最大端口號
Pasv_min_port=24500
設置用於被動模式的服務器最小端口號
Pam_service_name=vsftpd
設置用於用戶認證的pam 文件位置(/etc/pam.d/ 目錄中對應的文件名)
Userlist_enable=YES
是否啓用user_list 用戶列表文件
Userlist_deny=YES
是否禁止user_list 列表文件中的用戶賬號
Max_clients=0
最多容許多少個客戶端同時鏈接(0 爲無限制)
Max_clients=0
對來自相同ip 地址的客戶端。最多容許多少個併發鏈接(0 爲無限制)
 
Tcp_wrappers=YES
是否啓用TCP_wrappers 主機訪問控制
相關文章
相關標籤/搜索