Commando iptables và Ubuntu Linaro Desktop Distro


0

Tôi có một máy Raspberry, với "Raspbian" Linux Distro. Tôi đã thiết lập một máy chủ web nhỏ và tôi không gặp vấn đề gì.

Bây giờ, tôi có một máy Cu-Box I, với Linux Distro "Ubuntu Linaro Desktop". Nhưng, thật không may, tôi gặp lỗi khi thực hiện lệnh sau, khi tôi đang cố chuyển hướng tất cả các yêu cầu từ cổng 80 sang cổng 8080 (chuyển tiếp đơn giản). Các Commando như sau:

$: sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 80

Vì vậy, bởi Raspbian Distro và bởi tất cả các distro khác, tôi KHÔNG gặp vấn đề gì với lệnh này. Nhưng trong Bản phân phối "Ubuntu Linaro Desktop", HĐH nói với tôi rằng bảng "nat" không tồn tại và có lẽ tôi phải biên dịch lại và nâng cấp kernel của mình - đối với tôi đó không phải là giải pháp tốt nhất.

Tuy nhiên, xin vui lòng các bạn, bạn có thể cho tôi biết làm thế nào tôi có thể tránh lệnh này và sử dụng một số khác thay thế.


Phiên bản nào của Linaro bạn đang chạy? Vấn đề đó đã được biết và khắc phục một vài năm trước, nếu trí nhớ của tôi phục vụ tốt cho tôi.
MariusMatutiae

Phiên bản như sau: đăng nhập như: mật khẩu linaro linaro@89.215.43.108: Chào mừng bạn đến với Linaro 11.10 (chi nhánh phát triển) (GNU / Linux 3.0.35-gbe699c6-armv7l bẩn)
user3157099

Bản phân phối đặc biệt như Linux cho Cu Box-i v2. Tên hình ảnh là: ubfox-oneiric-freescale.img phục vụ bản phân phối linaro ở trên, nhưng tôi nghĩ là đặc biệt cho kiến ​​trúc ARMv7. Tôi đã thử nâng cấp ot 12.04 LTS, sau 3 giờ nâng cấp, tôi đã nhận được thông báo lỗi. Có lẽ thông tin này có thể giúp bạn trả lời câu hỏi của tôi. Cảm ơn.
user3157099

Không, không thể được thực hiện. Bạn có thể đọc ở đây, bọ xít , báo cáo lỗi. Nó ảnh hưởng đến Linaro 12.01 trở về trước, kernel Linux linaro-developer 3.1.1-5-linaro-lt-omap # 5 ~ lt ~ ci ~ 20111218011838 + 020210-Ubuntu SMP PREEMPT Mon Dec 19 05: armv7l armv7l armv7l GNU / Linux , muộn hơn của bạn.
MariusMatutiae

Cảm ơn Marius, tôi đồng ý, đó là rắc rối rất lớn cho mọi người, những người muốn chuyển hướng cổng 80. Thật không thể tin được ...
user3157099

Câu trả lời:


0

Nếu tất cả những gì bạn cần là chuyển hướng cổng 80, thì bạn có thể làm như sau:

  mkfifo my_pipe
  nc -l 80 0<my_pipe | nc remote_host 80 1>my_pipe

nếu bạn muốn chuyển hướng nó đến một máy tính khác, hoặc

  mkfifo my_pipe
  nc -l 80 0<my_pipe | nc loclhost 10000 1>my_pipe

nếu bạn muốn chuyển hướng nó đến cổng 10000 của máy tính của riêng bạn.

Chỉnh sửa:

nếu bạn muốn điều này tiếp diễn vô tận, chỉ cần thêm -k tùy chọn cho trường hợp đầu tiên của nc .


Vâng, Marius, nó hoạt động nhưng chỉ cho yêu cầu đầu tiên. Điều đó có nghĩa là, tôi đã đặt lệnh, bash đang chờ, tôi đưa ra yêu cầu, lệnh được điền và hoạt động, và sau đó bash chờ dòng lệnh tiếp theo - điều này có nghĩa là chuyển hướng chỉ xuất hiện một lần. Khi tôi đặt lại lệnh, nó hoạt động nhưng chỉ cho yêu cầu trình duyệt đầu tiên. Vì vậy, câu hỏi của tôi là - làm thế nào tôi có thể làm cho Commando của bạn vĩnh viễn !!! Đối với mọi yêu cầu, xuất phát từ một máy khác (trình duyệt ..). Cảm ơn.
user3157099

@ user3157099 Vui lòng xem chỉnh sửa của tôi
MariusMatutiae

Cảm ơn, Marius, nó hoạt động với các tùy chọn "-k". Tôi nghĩ rằng tôi đã giải quyết vấn đề của tôi. Bất kỳ ý tưởng nào là nơi tốt nhất của ub Ubuntu linaro, không có máy tính để bàn (startX), để đặt lệnh này để nó bắt đầu tự động bằng cách khởi động lại?
user3157099

@ user3157099 Nếu nó hoạt động, bạn nên chấp nhận và nâng cao câu trả lời của tôi, cảm ơn bạn.
MariusMatutiae

@ user3157099 Một nơi an toàn là /etc/rc.local
MariusMatutiae
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.