Cho phép truy cập vào Bảng điều khiển Linux


8

Giả sử một người đang chạy một SSHphiên vào GNU/Linuxhộp của khách hàng và anh ta yêu cầu bạn xem "những gì bạn đang làm". Làm thế nào bạn có thể cho phép bên kia thấy những gì đang diễn ra trong phiên của bạn?

Câu trả lời:


12

Bạn có thể thử sử dụng lệnh " màn hình ". Điều này sẽ cho phép bạn chạy một phiên nhiều người dùng mà 2 người dùng có thể kết nối và chia sẻ. Trước tiên, bạn sẽ cần thiết lập bit suid. màn hình đi kèm với nó bị tắt và cần thiết cho chế độ nhiều người dùng:

sudo chmod +s /usr/bin/screen
sudo chmod 755 /var/run/screen

Người dùng đầu tiên kết nối, chạy

screen -S shared

"-S" chỉ cung cấp cho phiên một tên dễ sử dụng. Để cho phép nhiều người truy cập, sử dụng "CTRL + A" để chạy các lệnh màn hình :

CTRL+A
:multiuser on
:acladd otheruser

Khi người dùng khác kết nối qua ssh, anh ta chỉ cần chạy

screen -x firstuser/shared

tham gia phiên


2
Nếu một trong hai bên có thể sử dụng su/sudođể trở thành người dùng khác thì bạn không cần phải gây rối với setuid hoặc quyền. Chỉ cần sử dụng su để cả hai bên đều sử dụng cùng một tài khoản. Người dùng đầu tiên chạy screen, và sau đó chạy screen -x.
Zoredache

Nó không được nêu rõ trong câu trả lời, nhưng người dùng thứ hai chỉ có thể thấy những gì đang chạy trong phiên màn hình; tức là người dùng đầu tiên phải chạy màn hình trước khi thực hiện bit "thú vị". Ngoài ra, nếu kích thước thiết bị đầu cuối không khớp, trải nghiệm của người dùng thứ hai có thể ... thú vị.
David Mackffy

@zoredache: theo cách đó bạn có thể gặp sự cố với quyền tty
ptman

2

Làm việc như người ở.

Tôi cũng nhận được một gợi ý ngoại tuyến từ một anh chàng mà tôi đã trò chuyện với việc đề xuất một giải pháp thay thế:

người dùng muốn chia sẻ sử dụng "w" để xem nơi người kia đang làm việc ...

# w
 16:27:10 up 30 days,  8:37,  3 users,  load average: 0,99, 0,94, 0,89
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     -                26Apr10  9days  0.04s  0.01s login -- root
root     pts/0    192.168.2.25     15:31   54:29   0.04s  0.00s script
root     pts/1    192.168.2.235    16:21    3:29   0.05s  0.05s -bash

Bây giờ chúng tôi bây giờ là người khác đang làm việc, chúng tôi phát hành điều này:

# script | tee /dev/pts/1 

Phương pháp này có nhược điểm so với đề xuất của katriel, vì nó chỉ là một cách và nếu bạn quên sử dụng lối ra để phá vỡ kết nối, các pts khác tiếp tục nhận dữ liệu ngay cả khi người dùng đăng xuất khỏi nó, là mối đe dọa bảo mật tiềm ẩn. Nhưng tôi nghĩ rằng nó đáng được đề cập.

Dù sao cũng cảm ơn katriel và những người khác.


1

Chỉ cần chạy một máy chủ VNC trên máy trạm của bạn và để anh ta kết nối với nó. Rẻ và dễ dàng :)


VNC tốt cho các phiên X, nhưng không phải cho phiên giao diện điều khiển.
Cristian Ciupitu

Nếu ứng dụng khách ssh của bạn được khởi chạy từ phiên X, thì không vấn đề gì.
apenwarr

1

Tôi có một dự án nguồn mở nhỏ mà tôi hy vọng sẽ đáp ứng nhu cầu này một cách hoàn hảo: Termbeamer .

Nó cho phép bạn bắt đầu một phiên cuối và gửi nó cho một hoặc nhiều người khác trên internet. Nó hoạt động từ phía sau tường lửa và NAT và có tùy chọn điều khiển từ xa nếu bạn muốn cho người khác "lái" - tốt cho lập trình cặp.


0

Apenwarr có một gợi ý hay, nhưng gần đây tôi đã sử dụng TeamViewer cho mục đích này. Nó tương tự như VNC, nhưng yêu cầu cài đặt ZERO, ở cả hai đầu. Không cần cài đặt máy chủ, không cần cài đặt máy khách. Nó thậm chí không truyền tải NAT mà không có cấu hình ... điều mà VNC không thể làm được.

http://teamviewer.com/

Hãy thử nó, bạn sẽ yêu.


Ngoài ra, nó có giá một triệu đô la.
apenwarr

Cũng chạy theo Wine chạy dưới X.
Wranorn
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.