Sử dụng rssh để hạn chế truy cập người dùng

Quản trị mạng – Chắc chắn sẽ có đôi lúc bạn muốn cung cấp các dịch vụ cần

đến việc truy cập shell nhưng quả thực lại không cho phép người dùng có

được sự truy cập này. Lúc này shell hạn chế, rssh, có thể được sử dụng để giải

quyết cho bạn tình huống này.

Ban đầu dường như nghe có vẻ khá mâu thuẫn, tuy nhiên sẽ có nhiều lần một quản

trị viên hệ thống nào đó có nhu cầu hợp lệ cần cung cấp các dịch vụ phụ thuộc vào

truy cập shell cho người dùng mà quả thực thông thường không cho phép họ sự

truy cập này trên hệ thống. Việc cung cấp truy cập shell cho người dùng, đặc biệt

nếu họ là những người dùng không tin cậy, có thể là một vấn đề bảo mật nghiêm

trọng cho các quản trị viên hệ thống.

Một ví dụ là sử dụng OpenSSH nhằm cung cấp các tài khoản SFTP để người dùng

có thể truyền tải các file đến và đi khỏi máy chủ bảo mật. OpenSSH yêu cầu truy

cập shell để cung cấp sự truy cập SFTP. Mặc dù vậy chúng ta vẫn có đó một shell

hạn chế có tên gọi rssh có thể cung cấp truy cập shell cho các máy chủ chẳng hạn

như OpenSSH nhưng không cung cấp một môi trường shell mang tính tương tác để

có thể bị lạm dụng bởi người dùng.

Công cụ rssh hiện có sẵn trong kho lưu trữ phần mềm của các hệ thống mã nguồn

mở giống như Unix, chẳng hạn như Debian GNU/Linux and FreeBSD. Lệnh apt-

cache search của Debian có thứ để nói về nó:

rssh - Restricted shell allowing only scp, sftp, cvs, rsync and/or rdist

Bạn có thể tìm thêm nhiều thông tin khác về chương trình tại trang chủ của nó.

Sau khi cài đặt nó bằng các công cụ quản lý phần mềm nguyên bản của hệ thống

Linux hoặc BSD Unix, việc triệu gọi và làm việc với công cụ là một việc hết sức

đơn giản. Chỉ cần tạo một tài khoản mà bạn muốn sử dụng rssh bằng các tiện ích

tạo tài khoản chuẩn của hệ thống, sau đó thiết lập shell mặc định của nó là rssh.

Khi thực hiện xong điều này, bạn có thể test cấu hình của tài khoản bằng cách đăng

nhập nó thông qua ssh. Kết nối sẽ được đóng lại trước khi đăng nhập hoàn tất, với

một thông báo giải thích rằng tài khoản đã bị hạn chế với rssh.

Tuy nhiên với những ai muốn cho phép tài khoản mặc định có thể thực hiện thứ gì

đó, nó sẽ ngăn chặn những cách thức khác trong việc sử dụng tài khoản chẳng hạn

như SFTP một cách mặc định. Để cho phép SFTP, rssh cần được cấu hình rứt

khoát để thực hiện như vậy. Tìm file rssh.conf, location của nó sẽ phụ thuộc vào hệ

thống cụ thể, nơi bạn cài đặt nó, tuy nhiên thông thường thì vẫn là đường dẫn

/usr/local/etc/rssh.conf, sau đó chỉnh sửa nó để có chứa dòng dưới đây, mục đích

của nó là cho phép các kết nối SFTP:

allowsftp

Các tùy chọn cấu hình tương tự cũng có trong các công cụ khác mà rssh hỗ trợ, với

chúng bạn cũng có thể cung cấp cho người dùng khả năng truy cập vào các tài

nguyên cụ thể trên hệ thống mà không cần phải cung cấp cho họ khả năng đăng

nhập trực tiếp bằng một shell tương tác.