Hướng dẫn xác thực tự động tài khoản Git, Github, Gitlab


Khác với SVN, khi bạn checkout sử dụng svn, tài khoản của bạn sẽ được ghi nhớ lại. Để khi sử dụng các lệnh svn khác, bạn sẽ không phải gõ lại tài khoản và mật khẩu. Nhưng khi sử dụng git thì hoàn toàn khác, mặc định git luôn yêu cầu bạn nhập tên tài khoản và mật khẩu.

Vì vậy hôm nay vinasupport.com sẽ hướng dẫn các bạn 3 cách để xác thực tự động tài khoản git. Các cách này đều có thể áp dụng cho tài khoản Github, Gitlab

Cách 1: Xác thực tự động với .netrc

Hãy tạo một file với đường dẫn ~/.netrc có nội dung như sau:

machine github.com
       login <username>
       password <password>

Lưu ý: 

  • Khi clone source bạn cần sử dụng đường dẫn với prefix là http/https thay cho ssh
  • Cách này chỉ áp dụng cho Linux, Mac. Windows thì không sử dụng được.
  • Password ở dạng plain text (Kém bảo mật)

Cách 2: Sử dụng git credential.helper

Sử dụng command bên dưới, sẽ cache lại tài khoản git của bạn.

$ git config credential.helper store
$ git clone https://github.com/vinasupport.com.git

Username for 'https://github.com': <USERNAME>
Password for 'https://USERNAME@github.com': <PASSWORD>

Bạn nên chỉ ra thời hạn lưu trữ tài khoản bằng command bên dưới:

$ git config --global credential.helper 'cache --timeout=3600'

Ví dụ trên mình chỉ lưu trữ thông tin tài khoản trong 3600 giây (1 giờ)

Cách 3: Sử dụng SSH Key

Đây là cách xác thực tốt nhất, giúp bảo mật tài khoản của bạn. Tuy nhiên nó hơi phức tạp, mình sẽ hướng dẫn các bạn từng bước.

Bước 1: Tạo một SSH Key:

$ ssh-keygen -t rsa -b 4096 -C "admin@vinasupport.com"

Câu lệnh trên sẽ tạo ra 1 cặp key là id_rsa (private key), và id_rsa.pub (public key), lưu trữ trong thư mục mặc định là ~/.ssh. Trong quá trình tạo key, bạn có thể chọn đường dẫn khác thay thế.

Bước 2: Thêm SSH Key vào tài khoản của bạn trên Github, Gitlab

Các bạn copy nội dung của file id_rsa.pub (Public key) vào tài khoản của bạn.

Trên Github: 

Truy cập vào đường dẫn từ tài khoản của bạn -> Settings -> SSH and GPG Keys -> Bấm vào button [ New SSH Key ] -> Nhập nội dung Public Key của bạn.

Trên Gitlab:

Truy cập vào đường dẫn từ tài khoản của bạn -> Settings -> SSH Keys –> Nhập nội dung Public Key của bạn.

Bước 3: Kiểm tra kết nối SSH của bạn

$ ssh -T git@github.com

Nếu các bạn nhận được thông báo dưới dây, SSH Keys của các bạn đang hoạt động tốt.

Hi username! You’ve successfully authenticated, but GitHub does not
provide shell access.

Để clone source từ Github, hay Gitlab các bạn sử dụng đường dẫn với không http/https ở đầu, mà thay thế nó bằng:

$ git clone git@github.com:<username>/vinasupport.com.git

Nguồn: vinasupport.com

 

SHARE

Bài viết liên quan

mode_edit Bình luận của bạn

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

account_circle
web