vsFTPd ngừng hoạt động sau khi cập nhật


17

Tôi vừa cập nhật lên Ubuntu 12.04 LTS (Pangolin chính xác) từ Ubuntu Server 11.10 (Oneiric Ocelot).

Nó đã cập nhật cài đặt vsFTPd của tôi và có vẻ như đã có gì đó thay đổi: / Tôi sử dụng xác thực PAM. Điều gì có thể đã thay đổi để gây ra điều này?

Khi cố gắng kết nối với máy chủ FTP, tôi gặp lỗi này:

500 OOPS: vsftpd: refusing to run with writable root inside chroot()

Tôi đã thử googling nó và nó nói thêm allow_writable_root=YESvào tập tin cấu hình - tuy nhiên khi tôi thử điều này và thử khởi động lại vsftpd thì nó không thể khởi động lại. Tại sao?

Đây là cách tôi thực sự sửa nó:

wget http://http.us.debian.org/debian/pool/main/v/vsftpd/vsftpd_3.0.2-3_amd64.deb -O vsftpd.deb
dpkg -i vsftpd.deb
echo "allow_writeable_chroot=YES" >> /etc/vsftpd.conf
service vsftpd reload

Và Voila :)


Liên kết, bạn cung cấp cho wgettham số, là chết. Có lẽ, bởi vì phiên bản 3.0.2-3bây giờ đã ra. Bất cứ ai phải đối mặt với vấn đề này, nên truy cập trang web này để có được liên kết chính xác. Liên kết được đề cập ở trên là dành cho nền tảng 64 bit. Để tìm liên kết cho gói này cho các nền tảng khác, ví dụ như 32-bit, hãy theo dõi trang này và cuộn xuống Download vsftpdphần.
trejder

Câu trả lời:


11

Tôi cũng gặp vấn đề này và nghĩ rằng đó là do bản cập nhật vsFTPd mới để tăng cường bảo mật, vì vậy trong thời gian này tôi sử dụng giải pháp này.

  1. Tôi kiểm tra thư mục mà người dùng FTP của tôi truy cập khi anh ấy / cô ấy đăng nhập lần đầu (thư mục gốc) bằng cách sử dụng thư mục này trong thiết bị đầu cuối: sudo chmod a-w /home/user

    Bạn có thể thay đổi /home/userthành bất cứ thứ gì là thư mục gốc của người dùng FTP của bạn.

  2. Tạo thư mục con trong thư mục, bằng cách sử dụng GUI hoặc nếu bạn chỉ có một thiết bị đầu cuối, thì đó là: sudo mkdir /home/user/newfolder

Bây giờ bạn sẽ có thể đăng nhập và đọc ghi trong "newfolder". Bạn sẽ KHÔNG thể tự ghi vào thư mục gốc từ máy khách FTP bằng chmod aw, vì vậy đó là lý do cho thư mục con, và bạn có thể.

Tôi đoán sẽ có một sửa chữa trong một thời gian không lâu, nhưng trong thời gian đó tôi hy vọng điều này sẽ giúp.


Cách khắc phục duy nhất tôi có thể tìm thấy là cài đặt vsftpd-ext và thay thế vsftpd cho phép sử dụng allow_writable_root, nhưng nó chỉ xuất hiện dưới dạng tệp .tar.gz và tôi rất mới sử dụng linux và dường như không thể tải nó lên bản dựng: / cuối cùng tôi chỉ buộc hạ cấp xuống phiên bản cũ của vsftpd mà tôi đã từng chạy
Ông King

Đã làm cho tôi. Chủ sở hữu của homedir phải tạo thư mục, không phải root.
OrangeTux

Không phải là làm một chmod aw "bị cấm" bởi các bậc thầy jedi linux? kể từ khi bạn được cấp phép 666?

9

Ai đó đã nhập lại tính năng để thêm allow_writeable_chroot=YEStừ phiên bản 3.0.0 đến 2.3.5 (xem mục blog này ).

Để cài đặt trên Ubuntu 12.04 (Chính xác Pangolin), hãy chạy các lệnh sau với quyền root:

add-apt-repository ppa:thefrontiergroup/vsftpd
apt-get update
apt-get install vsftpd
echo allow_writeable_chroot=YES >> /etc/vsftpd.conf

Lưu ý rằng dường như có một tùy chọn allow_writable_chroot=YES trong vsftpd-ext - lưu ý mssing e ! (hoặc đây là một lỗi đánh máy trong bài viết trên blog?)


1
+1 - đây chắc chắn là một lựa chọn tốt nhất và cảm ơn The Frontier Group đã cung cấp PPA này. Nhưng người dùng nên lưu ý rằng điều này sẽ đưa bạn "tắt". Do tính chất của những gì nó làm, vsftpd hơi bị lộ bảo mật và nên tìm thấy lỗ hổng trong vsftpd trong tương lai, sau đó người dùng phụ thuộc vào chủ sở hữu PPA để cập nhật hoặc người dùng sẽ cần tìm giải pháp khác tại thời điểm đó. Sẽ là khôn ngoan khi đăng ký vào danh sách gửi thư thông báo bảo mật ubfox và xem các thông báo bảo mật vsftpd nếu bạn đi theo tuyến đường này.
Robie Basak

Nhóm DEVOPS của chúng tôi đã tạo gói đó - để lại nhận xét về bài viết trên blog nếu bạn có bất kỳ vấn đề cá nhân nào bạn cần trợ giúp giải quyết và họ sẽ hỗ trợ bạn.
mlambie


6

vsFTPd 3.0.0 thêm tùy chọn cấu hình,

allow_writeable_chroot=YES

để một lần nữa kích hoạt hành vi trước đó (nguồn: Sửa 500 OOPS: vsFTPd: từ chối chạy với root có thể ghi bên trong chroot () , nhận xét từ Brian K. White).

Thật không may, 3.0.0 vẫn chưa được Ubuntu đóng gói. Vì vậy, trong thời gian chờ đợi, hạ cấp xuống một số phiên bản cũ hơn. Ví dụ: tôi đang sử dụng cái này trên Ubuntu 12.04 (Tê tê chính xác): http : //packages.ub Ubuntu.com/oneiric-updates/vsftpd


Bạn có thể thêm hướng dẫn cách cài đặt gói Oneiric mà bạn đã liên kết không? Tôi có nên tự tải gói không? Tôi cho rằng việc thêm các bản cập nhật một chiều vào kho lưu trữ của tôi sẽ làm mọi thứ rối tung lên khá nhiều.
thắt lưng

0

Một cách khác để làm điều mà người dùng Kristian thực hiện: Nó hoạt động với tôi. Tên người dùng tôi sử dụng là 'john'. Thay thế nó cho tên người dùng bạn muốn.

sudo chmod a-w /home/john - Xóa quyền cho tất cả người dùng để xóa hoặc sửa đổi một tập tin.

sudo mkdir /home/john/ftp - Tạo một thư mục có tên 'ftp' trong thư mục nhà của người dùng 'john'

sudo chown -Rv john.john /home/john/ftp - Thay đổi quyền sở hữu của thư mục thành nhóm 'john' và người dùng 'john'.


0

Tại sao?

Lấy và điều chỉnh từ câu trả lời của riêng tôi trong lỗi 1065714 .

Để giữ các bản phát hành ổn định ổn định, các bản cập nhật sau khi phát hành chỉ được xem xét trong các trường hợp cụ thể. Chi tiết về quy trình và các tiêu chí cần có được liệt kê tại đây: https://wiki.ubfox.com/StableReleaseUpdates#When

Điều này không gây khó khăn cho người dùng bản phát hành LTS khi có các bản ghi có thể ghi được, vì dự án vsftpd ngược dòng đã quyết định phát hành mà không có tính năng này tại thời điểm 12.04 được phát hành. Bây giờ 12.04 đã được phát hành và bản sửa lỗi không đáp ứng các tiêu chí trên, tôi không nghĩ rằng điều này sẽ thay đổi cho 12.04. Nhưng lưu ý rằng Nhóm Cập nhật Phát hành Ổn định đưa ra quyết định cuối cùng về vấn đề này và một bản cập nhật đã không được đề xuất cho họ.

Nếu bạn muốn phiên bản mới hơn của vsftpd được cung cấp thường dành cho người dùng muốn sử dụng tùy chọn "allow_writizable_chroot", thì kho lưu trữ backports là một địa điểm thích hợp cho việc này. Với một backport, người dùng muốn tính năng này có thể chỉ cần thêm kho lưu trữ backports và cài đặt vsftpd từ đó. Bạn có thể tìm hiểu thêm về backport và cách yêu cầu một cái ở đây: https : //wiki.ub Ubuntu.com/Ub UbuntuBackports

Trong khi đó, Nhóm Frontier đã vui lòng cung cấp một PPA, như được mô tả trong câu trả lời của thắt lưng. Hoặc bạn có thể sử dụng một trong những câu trả lời khác phù hợp với bạn.

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.