Samba文件服務器
(一)簡介
內網文件服務器
(二)端口
smbd: 為clinet提高資源訪問 tcp 139 445
nmbd: 提供netbios主機名解析 udp 137 138
(三)安裝相關程序
samba 主程序包 服務器軟件包 需要安裝
samba-common 通用工具和庫文件
samba-client 客戶端工具
(四)相關文件
/etc/samba/smb.conf 配置文件 # 和 ;注釋
(五)服務器段配置
vi /etc/samba/smb.conf
[global]
workgroup = 工作組
server string = 描述
log file = 日志位置
max log size = 日志最大大小 KB
security = user 安全等級
user 使用samba用戶登錄。注意:samba用戶由系統用戶轉變過來。要把用戶生成為samba用戶,此用戶必須已經是系統用戶
share 不用密碼
server 使用驗證服務器驗證
share definitions 共享設置
[共享目錄名]
Comment = 目錄描述
browseable = yes 目錄是否對用戶可見
writeable = yes 可寫(要與系統目錄權限相與)
valid users = 用戶名 用戶限制(目錄是哪個用戶所有)
path = /www 指定共享目錄位置
1 實驗1: 共享/movie 安全等級share 2 1)修改配置文件 3 #vim /etc/samba/smb.conf 4 101 security = share 5 6 263 [movie] 7 264 comment = dianying 8 265 path = /movie 9 266 browseable = yes 10 267 guest ok = yes 11 268 writable = yes 12 13 2)系統共享/movie目錄設置 14 #mkdir /movie 15 #chmod 777 /movie 16 #cd /movie 17 #touch tianqi.avi moshou.avi 18 19 關閉防火牆 20 #setup 21 關閉selinux 22 #vim /etc/selinux/config 23 SELINUX=disabled 24 #reboot 25 26 啟動服務 27 #service smb start 28 #service nmb start 29 #netstat -tlun 30 31 測試:\\192.168.149.251 32 33 34 實驗2:共享/pub /soft 目錄 安全等級 user 35 1)修改配置文件 36 #vim /etc/samba/smb.conf 37 101 security = user 38 39 263 [pub] 40 264 comment = public 41 265 path = /pub 42 266 browseable = yes 43 267 writable = yes 44 268 45 269 [soft] 46 270 comment = software 47 271 path = /soft 48 272 browseable = yes 49 273 writable = yes 50 51 2)系統共享目錄設置 52 #mkdir /pub 53 #mkdir /soft 54 #chmod 777 /pub 55 #chmod 700 /soft 56 #useradd aa 57 #passwd aa 58 #chown aa /soft 59 60 3)添加samba用戶 61 #smbpasswd -a aa 62 #smbpasswd -a tianqi 63 #pdbedit -L 64 65 重啟服務 66 #service smb restart 67 #service nmb restart 68 69 測試: 70 windows 窗口 \\192.168.149.251 71 net use * /del 72 73 linux #smbclient //192.168.149.254/soft -U aa
(六) 把系統用戶聲明為samba用戶
smbpasswd -a 系統用戶名
smbpasswd -a aa
smbpasswd -x 用戶名 刪除samba用戶
pdbedit -L 查看samba用戶
(七) 重啟服務
service smb restart
service nmb restart
注意:samba權限和系統權限取最嚴格權限
samba用戶必須是系統用戶
啟動的服務名是smb
(八) 客戶端使用
windows: 共享目錄
net use * /del 刪除緩存
linux客戶端:
smbclient //192.168.140.253/soft -U aa
防火牆配置
一 簡介
1 功能:
分割內網和外網
划分要被保護的服務器
2 分類
1)數據包過濾
分析ip和端口,mac是否符合規則,如果符合,接受
通過源端口,源ip,源mac,包中特定標記 和目錄端口,IP,mac 來確定數據包是否可以通過防火牆
2)代理服務器
3 防火牆限制
1)防火牆不能有效防止病毒和木馬
2)防火牆一般不設定對內部訪問規則,所以對內部攻擊無效
4 防火牆配置原則
拒絕所有,逐個允許
允許所有,逐個拒絕
5 linux常見防火牆
2.4---- iptables
2.2 ipchains
二 iptables防火牆
1 結構
表-------鏈--------規則
2 表
filter表 數據過濾表
nat表 網絡地址轉換
mangle 特殊數據包標記
3 鏈
filter表中: INPUT OUTPUT FORWARD
三 iptables基礎語法
1 規則的查看和清楚
iptables [-t 表名] [選項] -n
選項:
-L 查看
-F 清除所有規則
-X 清除自定義鏈
-Z 清除所有鏈統計
-n 以端口和ip顯示
iptables -t nat -L
查看nat表中規則
iptables -L
查看filter表中規則
2 定義默認策略
iptables -t 表名 -P 鏈名 ACCEPT|DROP
-P(大) 定義默認策略
iptables -t filter -P INPUT DROP
注意:不要把自己踢出服務器,應該最后設定。
3 ip和網卡接口設置
iptables [-AI 鏈] [-io 網卡接口] [-p 協議] [-s 源IP] [-d 目標ip] -j 動作
-A 追加鏈規則 在鏈規則最后加入此規則
-I INPUT 2 把此規則插入到INPUT鏈,變成第二條規則
-D 鏈 條數 刪除指定鏈的指定條數防火牆
iptables -D INPUT 2 刪除input鏈第二條規則
-i eth0 指定進入接口 要在INPUT鏈上定義
-o eth0 指定傳出接口 要在OUTPUT鏈上定義
-p 協議 tcp udp icmp all
-j 動作 ACCEPT DROP
iptables -A INPUT -i lo -j ACCEPT
允許本機回環網卡通信,在INPUT鏈
iptables -A INPUT -i eth0 -s 192.168.140.254 -j ACCEPT
允許254進入eth0
iptables -A INPUT -i eth0 -s 192.168.140.0/24 -j DROP
拒絕140網段訪問
4 設定端口訪問
iptables -A INPUT -i eth0 -p all -s 源ip --sport 源端口 -d 目標ip --dport 目標端口 -j 動作
iptables -A INPUT -i eth0 -p tcp -s 192.168.140.0/24 --dport 22 -j DROP
iptables -A INPUT -i eth0 -p tcp -s 192.168.140.0/24 --dport 137:139 -j ACCEPT
指定端口時,協議不能用all,要指定確切協議
5 模塊調用
1)
-m 模塊名 模塊選項 加載iptables功能模塊
-m state --state ESTABLISHED,RELATED
iptables -A INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
state 狀態模塊 常見狀態 ESTABLISHED 聯機成功的狀態 RELATED 返回包狀態
2)
-m mac --mac-source 按照mac地址限制訪問
iptables -A INPUT -m mac --mac-source aa:bb:cc:dd:ee:ff -j DROP
拒絕某mac訪問
3)
-m string --string "想要匹配的數據包中字串"
iptables -A FORWARD -p udp --dport 53 -m string --string "tencent" --algo kmp -j DROP
通過dns拒絕qq登錄
--algo 選擇模式匹配策略,支持KMP和BM兩種字符串搜索算法,任意指定一個即可
6 簡易防火牆
iptables -F
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 873 -j ACCEPT
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -P INPUT DROP
7 防火牆服務開機自啟動
chkconfig iptables on
8 防火牆規則開啟自啟動
1) service iptables save
會把規則保存到 /etc/sysconfig/iptables文件中,重啟會自動讀取
2) 手工寫防火牆腳本
如 vi /root/iptables.rule
iptables -F
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 873 -j ACCEPT
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -P INPUT DROP
賦予執行權限 chmod 755 /root/iptables.rule
開機運行 vi /etc/rc.local
寫入 /root/iptables.rule