Samba là dịch vụ chia sẻ file, folder và máy in… là ứng dụng nguồn mở trên nền của giao thức SMB. Samba tương tự dịch vụ share file trên Windows. Samba cho phép các client sử dụng Windows, Mac OS, Linux… có thể truy cập nội dung được chia sẻ từ server dịch vụ này. Trong bài này, chúng ta sẽ đi tìm hiểu cách triển khai dịch vụ Samba trên CentOS, chia sẽ thư mục không cần chứng thực.
Chúng ta có mô hình như sau:
Đầu tiên, trên máy CentOS tiến hành thiết lập địa chỉ IP và tắt dịch vụ SELinux và tiến hành khởi động lại máy
Thực hiện cài đặt dịch vụ Samba bằng lệnh:
- yum install -y samba
Tạo thư mục và phân quyền cho thư mục /share
- mkdir /share
- chmod 777 /share
Tiến hành cấu hình dịch vụ trong file cấu hình smb.conf
- vim /etc/samba/smb.conf
Ở phần [global] bạn sửa thông tin lại như sau:
Lưu ý: ở mục workgroup chính là tên workroup bạn đang dùng cho hệ thống mạng. Thông thường, mặc định khi cài đặt Windows thì workgroup của máy sẽ là WORKGROUP.
Bạn tiến hành thêm thông tin thư mục share với [public] là share name.
Sau khi tiến hành xong các bước trên, bạn tiến hành khởi động dịch vụ Samba và cho khởi động cùng hệ thống:
- systemctl start smb
- systemctl enable smb
Mở port, cho phép client có thể truy cấp dịch vụ:
- firewall-cmd –add-service=samba –permanent
- firewall-cmd –reload
Trong trường hợp bạn không muốn tắt SELinux như ở phần đầu bài viết, bạn có thể dùng lệnh như sau:
- setsebool -P samba_enable_home_dirs on
- restorecon -R /home/share
Sau khi bạn share thành công, từ máy client, bạn sẽ truy cập vào máy Samba thông qua \\[IP samba server], bạn sẽ thấy thư mục mình vừa chia sẻ thành công.
Bạn có thể thêm, xem, xóa sửa nội dung trong folder chia sẻ thoải mái, vì ở đây đang share full quyền.
Samba là một giao thức mạng phổ biến với nhiệm vụ chính là kết nối mạng các máy tính và truyển dữ liệu qua mạng. Chúng ta thường thấy Samba trên các máy tính chạy hệ điều hành Windows hơn, nhưng thực tế thì Samba được cung cấp cả cho Linux và Unix
Giao thức Samba [SMB] phổ biến đến mức nó là chức năng cần phải có ở các máy tính, các phần mềm nghe nhạc, phát video có hỗ trợ phát qua Internet như VLC… Việc ứng dụng giao thức SMB vào máy chủ Linux có thể sử dụng như là máy chủ NAS – Lưu trữ mạng.
Với trường hợp của mình thì mình sẽ cài Samba trên máy chủ mà bài trước đã cài qBittorrent lên đó – Xem bài viết Cài đặt qBittorrent trên Docker. Mục đích là tạo thành máy chủ nhỏ cho gia đình, phục vụ lưu trữ dữ liệu và tải files…
Cách cài đặt
Bước 1: Cập nhật hệ thống
Sử dụng câu lệnh sau để tiến hành cập nhật các gói dữ liệu cũng như đảm bảo các chương trình chạy trên Linux là mới nhất
sudo apt-get update sudo apt-get upgrade -y
Bước 2: Cài đặt Samba Server
sudo apt-get install samba samba-common-bin
Bước 3: Lựa chọn vị trí chia sẻ
Chúng ta cần tạo 1 thư mục, nơi lưu trữ các dữ liệu để chia sẻ qua giao thức Samba
mkdir /home/samba/shared
Hoặc bạn cũng có thể sử dụng luôn ổ đĩa gắn ngoài để làm thư mục chia sẻ. Mình sẽ lấy vị trí của ổ đĩa gắn ngoài /media/viet/VIET để lưu trữ, vì thế mà sẽ không cần chạy câu lệnh phía trên để tạo thư mục mới nữa
Bước 4: Chia sẻ thư mục qua giao thức Samba
Để cấu hình chia sẻ qua SMB, chúng ta cần chỉnh sửa file smb.conf. Sử dụng câu lệnh dưới đây để chỉnh sửa file bằng trình soạn thảo nano
sudo nano /etc/samba/smb.conf
Thêm các dòng sau vào cuối file vừa mở
[VIETHOME] path = /media/viet/VIET writeable=Yes create mask=0777 directory mask=0777 public=no
[VIETHOME]: Tên thư mục chia sẻ. Nếu các bạn thêm ổ đĩa vào Windows, nó sẽ có dạng \\IP-SERVER-SAMBA\VIETHOME
path: Đường dẫn đến thư mục chia sẻ đã cài đặt ở Bước 3
writeable: Với giá trị Yes, thư mục này sẽ cho phép người dùng chép dữ liệu vào. Ngược lại, No sẽ chặn việc chép dữ liệu vào thư mục chia sẻ
create mask và directory mask: sẽ cài đặt phân quyền cho file và thư mục có trong thư mục chia sẻ. Mình sẽ để 0777 để cấp quyền đọc ghi cao nhất cho nó. Còn các bạn có thể đặt 0644 cho create mask và 0755 cho directory mask để dảm bảo an toàn
public: với giá trị No, thư mục này sẽ cần phải đăng nhập trước khi truy cập
Lưu lại và thoát khỏi trình soạn thảo nano bằng tổ hợp phím: Ctrl + X tiếp theo là Y và cuối cùng là Enter
Bước 5: Thêm người dùng đăng nhập thư mục chia sẻ Samba
Người dùng mặc định của Raspberry Pi sẽ là pi, với Centos là root, và với nhân Debian,Ubuntu… thì chúng ta sẽ tự đặt. Ở bài viết mình sẽ lấy ví dụ là pi nhé. Chúng ta sẽ thêm tài khoản đó vào smb và đặt mật khẩu riêng để đăng nhập smb là 12345678
sudo smbpasswd -a pi
Sau đó nhập mật khẩu 12345678 vào khi được hỏi, nhập lại lần nữa để xác minh
Khởi động lại Samba
sudo systemctl restart smbd
Tận hưởng thành quả thôi nào
Kết luận
Trên đây mình đã hướng dẫn cách cài đặt giao thức Samba trên hệ điều hành Linux. Nếu trong quá trình cài đặt có bất kỳ vấn đề gì, hãy để lại bình luận để chúng ta cũng nhau giải quyết nhé. Xin cảm ơn!
Linux, Raspberry
Từ khoá:
cài đặt samba trên linux, linux, sambaHiển thị bình luận
Trả lời
Lưu tên của tôi, email, và trang web trong trình duyệt này cho lần bình luận kế tiếp của tôi.
Δ
Giới thiệu về tác giả
Việt Nguyễn
Người viết blog
Mình là Việt, mình 28 tuổi và lý do mà mình mở blog này chính là chia sẻ những kinh nghiệm, trải nghiệm mà bản thân đã khám phá được tới mọi người