Archive for 10/21/13
Cài đặt và cấu hình Samba trên Linux để share file với Windows/Linux | Quản trị mạng Linux
Thứ Hai, 21 tháng 10, 2013
Posted by Admin
Tag :
Document
Yêu cầu
1. Tạo người dùng và nhóm sau:
hocvien : hv1, hv2, hv3
giaovien: gv1, gv2
2. Cấu hình samba và sử dụng lệnh smbpasswd để thêm các người dùng trên có thể sử dụng dịch vụ chia sẻ file qua samba.
3. Chia sẻ thư mục /usr/share với tên test sao cho các người dùng trong nhóm giaovien có quyền read, write. Những người khác có quyền read.
4. Từ máy chủ Linux hoặc Windows kiểm tra cấu hình trên.
Mô hình
Hướng dẫn:
1. Tạo người dùng và nhóm
+ Tạo nhóm hocvien và người dùng hv1,hv2,hv3 (Mật khẩu là 123456)
+ Tạo nhóm giaovien và người dùng gv1,gv2 (Mật khẩu là 123456)
2. Cấu hình SAMBA server và thêm các người dùng vào nhóm có thể sử dụng samba
+ Kiểm tra xem SAMBA được cài đặt hay chưa
Nếu kết quả như hình sau thì SAMBA đã được cài đặt, ta tiếp tiến hành cấu hình SAMBA server
+ Cấu hình samba
File cấu hình các thư mục sẽ chia sẻ của SAMBA tại /etc/samba/smb.conf
Lưu ý các thông số sau:
* Các dòng có dấu ; ở đầu là các thông số cấu hình chưa áp dụng khi chạy, nếu bạn muốn sử dụng các thông tin cấu hình đó thì bỏ dấu ; ở đầu đi
+ Thêm người dùng vào nhóm có thể sử dụng samba
Khi add dùng các lệnh trên, samba sẽ yêu cầu bạn nhập mật khẩu mới cho từng người dùng. Khi người dùng muốn thao tác trên các thư mục được chia sẻ thì samba sẽ yêu cầu đăng nhập. Lúc này, người dùng phải sử dụng mật khẩu này để đăng nhập.
3. Chia sẻ thư mục /usr/share với tên test sao cho các người dùng trong nhóm giaovien có quyền read, write. Những người khác có quyền read.
Bạn thêm đoạn sau vào cuối file /etc/samba/smb.conf
Khởi động lại samba để thay đổi có hiệu lực
4. Kiểm tra thử.
+ Client là Windows
Trên 1 máy XP có thể kết nối tới samba server, ta mở Windows explorer gõ vào đường dẫn sau:
Bạn sẽ thấy xuất hiện 1 khung đăng nhập, bạn thử login bằng tài khoản hv1 thử tạo 1 file mới. Sau đó thử đăng nhập lại bằng tài khoản gv1 rồi tạo 1 file mới. (Login bằng mật khẩu đã đặt khi dùng lệnh smbpasswd –a lúc nãy)
Nếu khi login bằng tài khoản hv1 mà bạn tạo file có báo lỗi như sau:
Và khi login bằng tài khoản gv1 thì tạo được file bình thường thì bạn đã cấu hình đúng.
+ Client là Linux
Nếu client là linux, bạn có thể sử dụng smbclient, tuy nhiên, nếu làm vậy, bạn phải nhớ các lệnh của smbclient và việc bạn thao tác với file chia sẻ khá khó khăn. Do đó, bạn nên mount luôn thư mục được chia sẻ về máy mình để dễ thao tác
Như vậy bạn đã mount thư mục được chia sẻ trên máy 192.168.1.2 vào thư mục /mnt/samba trên máy mình.
Lúc này bạn có thể thao tác dễ hơn.
VD:
Lưu ý:
+ Nếu quá trình mount bạn đợi quá lâu và sau đó hiện báo lỗi “Connection timed out” thì nguyên nhân do Firewall phía server đã chặn lại. Bạn có thể tạm tắt Firewall phía Samba server bằng lệnh.
+ Bạn có thể dùng lệnh mount –t cifs để mount 1 thư mục được chia sẻ bởi 1 máy windows vào máy linux.
1. Tạo người dùng và nhóm sau:
hocvien : hv1, hv2, hv3
giaovien: gv1, gv2
2. Cấu hình samba và sử dụng lệnh smbpasswd để thêm các người dùng trên có thể sử dụng dịch vụ chia sẻ file qua samba.
3. Chia sẻ thư mục /usr/share với tên test sao cho các người dùng trong nhóm giaovien có quyền read, write. Những người khác có quyền read.
4. Từ máy chủ Linux hoặc Windows kiểm tra cấu hình trên.
Mô hình
Hướng dẫn:
1. Tạo người dùng và nhóm
+ Tạo nhóm hocvien và người dùng hv1,hv2,hv3 (Mật khẩu là 123456)
Code:
# groupadd hocvien # useradd -G hocvien -m -p 123456 hv1 # useradd -G hocvien -m -p 123456 hv2 # useradd -G hocvien -m -p 123456 hv3
Code:
# groupadd giaovien # useradd -G giaovien -m -p 123456 gv1 # useradd -G giaovien -m -p 123456 gv2
2. Cấu hình SAMBA server và thêm các người dùng vào nhóm có thể sử dụng samba
+ Kiểm tra xem SAMBA được cài đặt hay chưa
Code:
# rpm -qa|grep samba
Nếu kết quả như hình sau thì SAMBA đã được cài đặt, ta tiếp tiến hành cấu hình SAMBA server
Code:
samba-common-3.5.5-68.fc14.1.x86_64 samba-winbind-clients-3.5.5-68.fc14.1.x86_64 system-config-samba-docs-1.0.9-1.fc14.noarch system-config-samba-1.2.90-1.fc14.noarch samba-3.5.5-68.fc14.1.x86_64 samba-client-3.5.5-68.fc14.1.x86_64
+ Cấu hình samba
File cấu hình các thư mục sẽ chia sẻ của SAMBA tại /etc/samba/smb.conf
Code:
# vi /etc/samba/smb.conf
Lưu ý các thông số sau:
Code:
workgroup = MYGROUP # Tương tự như WORKGROUP trong Windows server string = Samba Server Version %v #Mô tả về Samba server ; netbios name = MYSERVER # Tạm hiểu là tên máy trong mạng ; interfaces = lo eth0 192.168.12.2/24 192.168.13.2/24 # Là các giao tiếp mạng mà samba sẽ lằng nghe yêu cầu kết nối ; hosts allow = 127. 192.168.12. 192.168.13. # Là các host được phép truy xuất dự liệu chia sẻ bằng samba log file = /var/log/samba/log.%m # Là vị trí file log , %m là tên máy kết nối vào samba server max log size = 50 # Dung lượng tối đa của file log (Tính bằng KB) security = user # Kiểu chứng thực, mặc định là dùng user của samba passdb backend = tdbsam # Cách lưu trữ mật khẩu của user
* Các dòng có dấu ; ở đầu là các thông số cấu hình chưa áp dụng khi chạy, nếu bạn muốn sử dụng các thông tin cấu hình đó thì bỏ dấu ; ở đầu đi
+ Thêm người dùng vào nhóm có thể sử dụng samba
Code:
# smbpasswd –a hv1 # smbpasswd –a hv2 # smbpasswd –a hv3 # smbpasswd –a gv1 # smbpasswd –a gv2
Khi add dùng các lệnh trên, samba sẽ yêu cầu bạn nhập mật khẩu mới cho từng người dùng. Khi người dùng muốn thao tác trên các thư mục được chia sẻ thì samba sẽ yêu cầu đăng nhập. Lúc này, người dùng phải sử dụng mật khẩu này để đăng nhập.
3. Chia sẻ thư mục /usr/share với tên test sao cho các người dùng trong nhóm giaovien có quyền read, write. Những người khác có quyền read.
Bạn thêm đoạn sau vào cuối file /etc/samba/smb.conf
Code:
[test]
comment = Test thu muc chia se
path = /usr/share
public = yes
writable = yes
printable = no
write list = +giaovien
Code:
# service smb restart
4. Kiểm tra thử.
+ Client là Windows
Trên 1 máy XP có thể kết nối tới samba server, ta mở Windows explorer gõ vào đường dẫn sau:
Code:
\\192.168.1.2\test
Bạn sẽ thấy xuất hiện 1 khung đăng nhập, bạn thử login bằng tài khoản hv1 thử tạo 1 file mới. Sau đó thử đăng nhập lại bằng tài khoản gv1 rồi tạo 1 file mới. (Login bằng mật khẩu đã đặt khi dùng lệnh smbpasswd –a lúc nãy)
Nếu khi login bằng tài khoản hv1 mà bạn tạo file có báo lỗi như sau:
Và khi login bằng tài khoản gv1 thì tạo được file bình thường thì bạn đã cấu hình đúng.
+ Client là Linux
Nếu client là linux, bạn có thể sử dụng smbclient, tuy nhiên, nếu làm vậy, bạn phải nhớ các lệnh của smbclient và việc bạn thao tác với file chia sẻ khá khó khăn. Do đó, bạn nên mount luôn thư mục được chia sẻ về máy mình để dễ thao tác
Code:
# mkdir /mnt/samba # mount -t cifs -o username=gv1,password=123456 //192.168.1.2/test /mnt/samba
Như vậy bạn đã mount thư mục được chia sẻ trên máy 192.168.1.2 vào thư mục /mnt/samba trên máy mình.
Lúc này bạn có thể thao tác dễ hơn.
VD:
Lưu ý:
+ Nếu quá trình mount bạn đợi quá lâu và sau đó hiện báo lỗi “Connection timed out” thì nguyên nhân do Firewall phía server đã chặn lại. Bạn có thể tạm tắt Firewall phía Samba server bằng lệnh.
Code:
# service iptables stop
+ Bạn có thể dùng lệnh mount –t cifs để mount 1 thư mục được chia sẻ bởi 1 máy windows vào máy linux.
Ai đã từng làm việc trên môi trường linux chắc không còn lạ gì với SSH, một công cụ tuyệt vời để access và quản trị server.
Mặc định sau khi cài đặt SSH server hoạt động trên port 22, bạn nào muốn quản trị server từ internet thì nhớ public port 22 trên router nhé.
1. Cài đặt ssh server và xác thực truy cập bằng mật khẩu.
1
2
3
| [root@fw:~# apt-get install openssh-server[root@fw:~# vi /etc/ssh/sshd_configPermitRootLogin no |
- Dòng 1: cài đặt openssh-server
- Dòng 2: Dùng trình soạn thảo vi edit cấu hình
- Dòng 3: Không cho user root đăng nhập trực tiếp xuyên qua ssh
- Dòng 2: Dùng trình soạn thảo vi edit cấu hình
- Dòng 3: Không cho user root đăng nhập trực tiếp xuyên qua ssh
2. Đăng nhập SSH Server
Tiếp theo bạn down ứng dụng PuTTY về, đây là ứng dụng nhỏ chạy trên windows có 1 file exe duy nhất dùng để ssh vào server.
- Hostname: IP của server
- Port: Cổng SSH Server đang lắng nghe
- Saved Sessions: Đặt một cái tên nào đó
- Port: Cổng SSH Server đang lắng nghe
- Saved Sessions: Đặt một cái tên nào đó
Chọn Yes nhập user pass để đăng nhập quản trị, các bạn chú ý dùng account quản trị khác nhé vì ở bước trên mình đã deny account root rồi.