Cách bật quyền truy cập ssh root trên Ubuntu 14.04


136

Tôi đã muốn kích hoạt sshquyền truy cập root trên Ubuntu 14.04. Chỉnh sửa /etc/ssh_config(PermitRootLogin có) không ảnh hưởng gì.

Câu trả lời:


206

Chỉ cần thêm mật khẩu cho root là không đủ cho Ubuntu 14.04 Server.

Bạn cũng cần chỉnh sửa /etc/ssh/sshd_configvà nhận xét dòng sau:

PermitRootLogin without-password

Ngay bên dưới nó, thêm dòng sau:

PermitRootLogin yes

Sau đó khởi động lại SSH:

service ssh reload

Đối với Ubuntu 16.04.1 LTS (GNU / Linux 4.4.0-59-generic x86_64) PermitRootLogin without-passwordđã được thay thế bằng PermitRootLogin prohibit-password.


10
Khi làm điều này thông qua ssh, service ssh reloadlà hữu ích.
Torsten Römer

Tôi đã chạy Ubuntu trên VM, tuy nhiên tôi không biết những thay đổi này không hoạt động cho đến khi tôi khởi động lại VM một lần (có thể tôi cần dừng / khởi động dịch vụ mạng ngoài các bước trên tuy nhiên tôi không chắc chắn).
VSB

2
Tôi phải làm PermitRootLogin yesvì tôi có mật khẩu đơn giản
JorgeeFG

1
Nếu làm điều này trong khi ssh hoặc scp cho bạn biết "Quyền bị từ chối, vui lòng thử lại" trong một cửa sổ khác, thoát và thử lại ssh (hoặc scp) đó thay vì chỉ nhập lại mật khẩu.
Camille Goudeseune 10/2/2015

1
Cũng đừng quên kiểm tra xem root có được đề cập trong sshd_config hay không: RootUsers
Jan

38

Bạn cần thiết lập mật khẩu cho tài khoản root và sau đó nó sẽ hoạt động.

sudo passwd

Nhập cùng một mật khẩu hai lần.

PS Sau khi sửa đổi / etc / ssh / sshd_config đừng quên tải lại máy chủ openssh.

sudo service ssh reload

2
Điều này sẽ làm việc; nhưng với OP: suy nghĩ hai lần trước khi làm điều đó. Nếu bạn vẫn làm và PC của bạn có trên internet, hãy xem xét thêm fail2banvào hệ thống. (Nhận xét này có liên quan đến việc cho phép đăng nhập root thông qua ssh; có hay không mật khẩu cục bộ cho root chỉ là vấn đề của hương vị).
Rmano

25

Với máy chủ Ubuntu 14.04.

Đặt mật khẩu

sudo passwd

Thay đổi trong / etc / ssh / sshd_config

Thay đổi PermitRootLogin

PermitRootLogin yes

Bạn cũng có thể phải kiểm tra giá trị của Mật khẩu. Nếu nó được đặt thành không thì đặt thành có

PasswordAuthentication yes

Sau đó khởi động lại SSH:

service ssh restart


5
Đây là câu trả lời duy nhất đầy đủ. Các câu trả lời khác bị thiếu một số phần.
wvducky

Ngoại trừ của tôi không có dòng này. Thêm nó không làm cho nó hoạt động.
SDsolar

OMG, vâng !! Cảm ơn bạn! PasswordAuthenticationlà liên kết bị thiếu
mpen

Tôi đã thanh lọc dịch vụ openssh và máy khách openssh trên cả hai hệ thống (Kali Linux và Ubuntu 18), cài đặt lại chúng, áp dụng câu trả lời này và everytihng hoạt động hoàn hảo.
mk1024

Trong sshd_config của tôi, vì nó có "UsePam yes" và một dòng "Denygroup root", bên cạnh tất cả các hành động trên, tôi cũng cần xóa "root" cho Denygroup để nó hoạt động.
Đèn nhấp nháy

3

Đối với 14.04, bạn sẽ phải nhận xét bên dưới dòng trong / etc / ssh / sshd_config

#StrictModes yes

3
Thay vì vô hiệu hóa kiểm tra chế độ tệp, sẽ tốt hơn để đảm bảo rằng /root/.ssh, và các tệp trong đó không thể đọc được bởi bất kỳ người dùng nào khác ngoài root.
Adaephon

-1

Đối với tôi, không có bước nào trong số này hoạt động, tôi thậm chí đã từng thử một thứ mà tôi chưa từng thử cho thứ khác sau đó là đồ chơi vm: PermitRootLogin without-password

Điều duy nhất làm việc với tôi là vô hiệu hóa mô-đun PAM cho việc này:

UsePAM no

Tùy chọn này thường ở cuối tập tin. Thành thật mà nói, tôi không biết những nhược điểm thực sự của việc này, nhưng vì bạn không được phép cho phép đăng nhập root trực tuyến, tôi đoán rằng nó ổn đối với một dev-vm riêng.

Tuy nhiên, luôn luôn đặt mật khẩu mạnh. Không, đây không phải là một ngoại lệ. Thậm chí không chỉ lần này ...


5
PermitRootLogin without-passwordkhông có nghĩa là người dùng root được đăng nhập mà không cần xác thực. Điều đó có nghĩa là người dùng root không được phép đăng nhập bằng mật khẩu. Thay vào đó, người dùng root phải đăng nhập bằng cách sử dụng các khóa RSA, an toàn hơn.
Craig

@ Khắc phục sự cố mà tôi đang đề cập không phải là root đó sẽ cần sử dụng RSA SSH-Keys. Vấn đề là root là người dùng mọi người gõ cửa SSH-Server của bạn biết có tồn tại. Đó không phải là một điều tốt trong quan điểm của tôi. Nhưng hãy thoải mái cho phép đăng nhập root thông qua SSH, nhưng như bạn đã nói, ít nhất hãy đảm bảo rằng nó sử dụng các khóa để làm như vậy!
Kjellski

4
Bạn nói rằng bạn sẽ không thử PermitRootLogin without-passwordbất cứ thứ gì ngoài VM đồ chơi. Đó là những gì bạn sử dụng để vô hiệu hóa xác thực mật khẩu cho root, do đó cách duy nhất để root có thể đăng nhập là sử dụng các khóa RSA. Bạn không nói rằng bạn đã thử tùy chọn đó với các khóa RSA. Nếu bạn đã thử tùy chọn đó mà không có khóa, không có cách nào nó có thể thành công. Nếu bạn sử dụng PermitRootLogin without-password, thì bạn không thể đăng nhập bằng xác thực mật khẩu, không phải bằng mật khẩu mạnh, không phải mật khẩu trống, hoàn toàn không.
Craig
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.