Thứ năm, 17/04/2014 | 00:00 GMT+7

Thiết lập server ban đầu với Ubuntu 14.04

Khi bạn lần đầu tiên tạo một server Ubuntu 14.04 mới, có một số bước cấu hình mà bạn nên thực hiện sớm như một phần của cài đặt cơ bản. Điều này sẽ tăng tính bảo mật và khả năng sử dụng cho server của bạn và sẽ tạo cho bạn một nền tảng vững chắc cho các hành động tiếp theo.

Bước một - Đăng nhập root

Để đăng nhập vào server của bạn, bạn cần biết địa chỉ IP công cộng của server và password cho account của user "root". Nếu bạn chưa đăng nhập vào server của bạn , bạn có thể làm theo hướng dẫn đầu tiên trong loạt bài này, Cách kết nối với Server bằng SSH , trình bày chi tiết quá trình này.

Nếu bạn chưa được kết nối với server của bạn , hãy tiếp tục và đăng nhập với quyền là user root bằng lệnh sau (thay thế từ được đánh dấu bằng địa chỉ IP công cộng của server của bạn):

  • ssh root@SERVER_IP_ADDRESS

Hoàn tất quá trình đăng nhập bằng cách chấp nhận cảnh báo về tính xác thực của server , nếu nó xuất hiện, thì hãy cung cấp xác thực root của bạn (mật khẩu hoặc private key ). Nếu đây là lần đầu tiên bạn đăng nhập vào server , bằng password , bạn cũng sẽ được yêu cầu thay đổi password root .

Về root

User root là admin-user trong môi trường Linux có các quyền rất rộng. Bởi vì các quyền cao của account root , bạn thực sự không khuyến khích sử dụng nó một cách thường xuyên. Do quyền của account root có thể thực hiện lệnh rủi ro do vô tình hay cố ý. .

Bước tiếp theo là cài đặt một account user thay thế với phạm vi ảnh hưởng giảm bớt cho công việc hàng ngày. Ta sẽ hướng dẫn bạn cách đạt được các quyền gia tăng lúc bạn cần chúng.

Bước hai - Tạo user mới

Khi bạn đã đăng nhập bằng quyền root , ta chuẩn bị thêm account user mới mà ta sẽ sử dụng để đăng nhập từ bây giờ.

Ví dụ này tạo một user mới có tên là “demo”, nhưng bạn nên thay thế nó bằng một tên user bạn muốn :

  • adduser demo

Bạn sẽ được hỏi một số câu hỏi, bắt đầu với password account .

Nhập một password mạnh và, tùy chọn, điền vào bất kỳ thông tin bổ sung nào nếu bạn muốn. Điều này là không bắt buộc và bạn có thể chỉ cần nhấn "ENTER" trong bất kỳ trường nào bạn muốn bỏ qua.

Bước ba - Đặc quyền root

Bây giờ, ta có một account user mới với các quyền account thông thường. Tuy nhiên, đôi khi ta có thể cần thực hiện các việc admin .

Để tránh phải đăng xuất khỏi user bình thường của ta và đăng nhập lại bằng account root , ta có thể cài đặt những gì được gọi là "siêu user " hoặc quyền root cho account thông thường của bạn . Điều này sẽ cho phép user bình thường của ta chạy các lệnh có quyền quản trị bằng cách đặt từ sudo trước mỗi lệnh.

Để thêm các quyền này cho user mới, ta cần thêm user mới vào group “sudo”. Theo mặc định, trên Ubuntu 14.04, user thuộc group “sudo” được phép sử dụng sudo .

Như root , chạy lệnh này để thêm user mới của bạn vào group sudo (thay thế chữ tô đậm với user mới của bạn):

  • gpasswd -a demo sudo

Như vậy, user của bạn có thể chạy các lệnh với các quyền của user siêu cấp! Để biết thêm thông tin về cách thức hoạt động, hãy xem hướng dẫn sudoers này .

Bước tiếp theo trong việc bảo mật server của bạn là cài đặt xác thực public key cho user mới của bạn. Cài đặt này sẽ tăng tính bảo mật cho server của bạn bằng cách yêu cầu SSH key riêng tư để đăng nhập.

Tạo một cặp khóa

Nếu bạn chưa có cặp SSH key , bao gồm public key và private key , bạn cần tạo một cặp khóa. Nếu bạn đã có khóa muốn sử dụng, hãy chuyển sang bước Sao chép public key .

Để tạo một cặp khóa mới, hãy nhập lệnh sau vào terminal của máy local của bạn (tức là máy tính của bạn):

  • ssh-keygen

Giả sử user local của bạn được gọi là “localuser”, bạn sẽ thấy kết quả giống như sau:

ssh-keygen output
Generating public/private rsa key pair. Enter file in which to save the key (/Users/localuser/.ssh/id_rsa):

Nhấn quay lại để chấp nhận tên và đường dẫn file này (hoặc nhập tên mới).

Tiếp theo, bạn sẽ được yêu cầu nhập passphrase (password bảo vệ) để bảo mật khóa. Bạn có thể nhập passphrase (password bảo vệ) hoặc để trống passphrase (password bảo vệ) .

Lưu ý: Nếu bạn để trống passphrase (password bảo vệ) , bạn có thể sử dụng private key để xác thực mà không cần nhập passphrase (password bảo vệ) . Nếu bạn nhập passphrase (password bảo vệ) , bạn cần cả private key passphrase (password bảo vệ) để đăng nhập. Bảo mật khóa của bạn bằng passphrase (password bảo vệ) an toàn hơn, nhưng cả hai phương pháp đều có công dụng và an toàn hơn so với xác thực bằng password cơ bản.

Điều này tạo ra một private key , id_rsa , và một public key , id_rsa.pub , trong .ssh folder của localuser ‘s folder home. Lưu ý private key không được chia sẻ với bất kỳ ai không được phép truy cập vào server của bạn!

Sao chép public key

Sau khi tạo cặp SSH key , bạn cần sao chép public key của bạn vào server mới. Ta sẽ trình bày hai cách dễ dàng để làm điều này.

Lưu ý : Phương thức ssh-copy-id sẽ không hoạt động trên DigitalOcean nếu SSH key được chọn trong quá trình tạo Server. Điều này là do DigitalOcean vô hiệu hóa xác thực password nếu có SSH key và ssh-copy-id dựa vào xác thực password để sao chép khóa.

Nếu bạn đang sử dụng DigitalOcean và đã chọn SSH key trong quá trình tạo Server, hãy sử dụng tùy chọn 2 để thay thế.

Tùy chọn 1: Sử dụng ssh-copy-id

Nếu máy local của bạn đã cài đặt tập lệnh ssh-copy-id , bạn có thể sử dụng nó để cài đặt public key của bạn cho mọi user mà bạn có thông tin đăng nhập.

Chạy tập lệnh ssh-copy-id bằng cách chỉ định user và địa chỉ IP của server mà bạn muốn cài đặt khóa, như sau:

  • ssh-copy-id demo@SERVER_IP_ADDRESS

Sau khi cung cấp password của bạn khi được yêu cầu , public key của bạn sẽ được thêm vào file .ssh/authorized_keys của user từ xa. Khóa cá nhân tương ứng bây giờ được dùng để đăng nhập vào server .

Tùy chọn 2: Cài đặt khóa theo cách thủ công

Giả sử bạn đã tạo cặp SSH key bằng bước trước, hãy sử dụng lệnh sau tại terminal của máy local của bạn để in public key của bạn ( id_rsa.pub ):

  • cat ~/.ssh/id_rsa.pub

Thao tác này sẽ in SSH key công khai của bạn, khóa này sẽ trông giống như sau:

id_rsa.pub contents
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf localuser@machine.local

Chọn public key và sao chép nó vào clipboard của bạn.

Thêm public key cho user từ xa mới

Để cho phép sử dụng SSH key để xác thực là user từ xa mới, bạn phải thêm public key vào một file đặc biệt trong folder chính của user .

Trên server , với quyền là user root , hãy nhập lệnh sau để chuyển sang user mới (thay thế tên user của chính bạn):

  • su - demo

Đến đây bạn sẽ ở trong folder chính của user mới của bạn.

Tạo một thư .ssh mới có tên .ssh và hạn chế quyền của nó bằng các lệnh sau:

  • mkdir .ssh
  • chmod 700 .ssh

Bây giờ mở một file trong .ssh gọi authorized_keys với một editor . Ta sẽ sử dụng nano để chỉnh sửa file :

  • nano .ssh/authorized_keys

Bây giờ, hãy chèn public key của bạn (phải có trong clipboard của bạn) bằng cách dán nó vào editor .

Nhấn CTRL-X để thoát khỏi file , sau đó nhấn Y để lưu các thay đổi bạn đã thực hiện, sau đó ENTER để xác nhận tên file .

Bây giờ, hãy hạn chế quyền của file ủy quyền_có_cách bằng lệnh này:

  • chmod 600 .ssh/authorized_keys

Nhập lệnh này một lần để quay lại user root :

  • exit

Đến đây bạn có thể đăng nhập SSH với quyền là user mới của bạn , sử dụng private key để xác thực.

Để đọc thêm về cách xác thực khóa hoạt động, hãy đọc hướng dẫn này: Cách cấu hình xác thực dựa trên SSH key trên server Linux .

Bước 5 - Cấu hình SSH Daemon

Bây giờ ta đã có account mới, ta có thể bảo mật server của bạn một chút bằng cách sửa đổi cấu hình daemon SSH của nó (chương trình cho phép ta đăng nhập từ xa) để không cho phép truy cập SSH từ xa vào account gốc .

Bắt đầu bằng cách mở file cấu hình bằng editor của bạn dưới dạng root:

  • nano /etc/ssh/sshd_config

Tiếp theo, ta cần tìm dòng có dạng như sau:

/ etc / ssh / sshd_config (trước)
PermitRootLogin yes 

Ở đây, ta có tùy chọn để vô hiệu hóa đăng nhập root thông qua SSH. Đây thường là một cài đặt an toàn hơn vì giờ đây ta có thể truy cập vào server của bạn thông qua account regular user của bạn và báo cáo quyền khi cần thiết.

Sửa đổi dòng này thành “no” như thế này để tắt đăng nhập root:

/ etc / ssh / sshd_config (sau)
PermitRootLogin no 

Vô hiệu hóa đăng nhập root từ xa rất được khuyến khích trên mọi server !

Khi bạn thực hiện xong các thay đổi của bạn , hãy lưu file bằng phương pháp ta đã xem trước đó ( CTRL-X , sau đó Y , sau đó ENTER ).

Bước 6 - Reload SSH

Bây giờ ta đã thực hiện thay đổi, ta cần khởi động lại dịch vụ SSH để nó sử dụng cấu hình mới của ta .

Nhập cái này để khởi động lại SSH:

  • service ssh restart

Bây giờ, trước khi đăng xuất khỏi server , ta nên kiểm tra cấu hình mới của bạn . Ta không muốn ngắt kết nối cho đến khi ta có thể xác nhận các kết nối mới có thể được cài đặt thành công.

Mở một cửa sổ terminal mới trên máy local của bạn. Trong cửa sổ mới, ta cần bắt đầu kết nối mới với server của bạn . Lần này, thay vì sử dụng account root , ta muốn sử dụng account mới mà ta đã tạo.

Đối với server mà ta đã chỉ cho bạn cách cấu hình ở trên, bạn sẽ kết nối bằng lệnh này. Thay thế tên user và địa chỉ IP server của bạn nếu thích hợp:

  • ssh demo@SERVER_IP_ADDRESS

Lưu ý: Nếu bạn đang sử dụng PuTTY để kết nối với server của bạn , hãy đảm bảo cập nhật số cổng của phiên để trùng với cấu hình hiện tại của server .

Bạn sẽ được yêu cầu nhập password của user mới mà bạn đã cấu hình . Sau đó, bạn sẽ đăng nhập với quyền là user mới của bạn .

Lưu ý , nếu bạn cần chạy một lệnh có quyền root, hãy nhập “sudo” trước nó như sau:

  • sudo command_to_run

Nếu tất cả đều ổn, bạn có thể thoát phiên của bạn bằng lệnh :

  • exit

Đi đâu từ đây?

Lúc này, bạn đã có một nền tảng vững chắc cho server của bạn . Bạn có thể cài đặt bất kỳ phần mềm nào bạn cần trên server của bạn ngay bây giờ.

Nếu bạn không chắc mình muốn làm gì với server của bạn , hãy xem hướng dẫn tiếp theo trong loạt bài này để biết Các bước được đề xuất bổ sung cho Server Ubuntu 14.04 mới . Nó bao gồm những thứ như cài đặt firewall cơ bản, NTP và các file swap . Nó cũng cung cấp các liên kết đến các hướng dẫn chỉ cho bạn cách cài đặt các ứng dụng web phổ biến. Bạn cũng có thể cần xem hướng dẫn này để tìm hiểu cách bật fail2ban để giảm hiệu quả của các cuộc tấn công vũ phu.

Nếu bạn chỉ muốn khám phá, hãy xem phần còn lại của cộng đồng của ta để tìm thêm hướng dẫn. Một số ý tưởng phổ biến là cấu hình LAMP hoặc LEMP , điều này sẽ
cho phép bạn lưu trữ các trang web.


Tags:

Các tin liên quan

Giới thiệu về công cụ nén tệp trên server Linux
2014-04-15
Cách tải phần mềm và nội dung lên VPS Linux của bạn
2014-04-14
Cách bảo vệ server của bạn chống lại lỗ hổng bảo mật OpenSSL.
2014-04-08
Cách cấu hình mail server bằng Postfix, Dovecot, MySQL và SpamAssassin
2014-04-01
Cách cấu hình mail server bằng Postfix, Dovecot, MySQL và SpamAssassin
2014-04-01
Cách cấu hình công cụ để sử dụng IPv6 trên VPS Linux
2014-04-01
Cách điều chỉnh cấu hình SSH Daemon của bạn trên VPS Linux
2014-03-26
Cách xác thực người dùng với server SSH bằng Monkeysphere trên VPS Ubuntu
2014-03-24
Cách xác thực danh tính server SSH với Monkeysphere trên VPS Ubuntu
2014-03-24
Cách thiết lập DNSSEC trên server DNS BIND ủy quyền
2014-03-19