Cách tạo trang web được bảo mật bằng https


87

Tôi phải xây dựng một ứng dụng web nhỏ cho một công ty để duy trì dữ liệu kinh doanh của họ ... Chỉ những người trong công ty mới sử dụng nó, nhưng chúng tôi đang có kế hoạch lưu trữ nó trong miền công cộng, để nhân viên có thể kết nối với ứng dụng từ nhiều vị trí khác nhau . (Cho đến bây giờ tôi đã xây dựng các ứng dụng web chỉ được lưu trữ nội bộ)

Tôi đang tự hỏi liệu mình có cần sử dụng kết nối bảo mật (https) hay chỉ cần xác thực biểu mẫu là đủ.

Nếu bạn nói https, tôi có một số câu hỏi:

  1. Tôi nên làm gì để chuẩn bị trang web của mình cho https. (Tôi có cần thay đổi mã / Cấu hình không)
  2. SSL và https có phải là một và giống nhau ...
  3. Tôi có cần đăng ký với ai đó để xin giấy phép hay gì đó không.
  4. Tôi có cần bảo mật tất cả các trang của mình hay chỉ trang đăng nhập ...

Tôi đã tìm kiếm trên Internet để tìm câu trả lời, nhưng tôi không thể có được tất cả những điểm này ... Mọi sách trắng hoặc tài liệu tham khảo khác cũng sẽ hữu ích ...

Hãy hỏi nếu bạn cần thêm thông tin.

Cảm ơn

  • Raja

Xin chào tất cả ... Cảm ơn mọi người ... Tất cả các câu trả lời của bạn đều rất hữu ích ... Sẽ là không công bằng nếu chọn một câu trả lời ở đây ... (VẬY phải có điều khoản cho những vị trí như vậy). do đó, tôi đã chọn một câu trả lời và bỏ phiếu tán những người khác ... Câu trả lời được lựa chọn là như quan trọng không kém là câu trả lời khác ...
The King

3
Thận trọng bổ sung, tùy thuộc vào mức độ bảo mật của thông tin (ví dụ: thông tin cá nhân có thể phải tuân theo luật liên bang) và mối quan hệ và hợp đồng mà bạn có với công ty, bạn có thể cân nhắc xem liệu bạn có phải chịu trách nhiệm pháp lý không nếu ai đó hack trang web.
huynhjl

Khi bạn đã cài đặt chứng chỉ trên máy chủ của mình, để thêm https vào trang web của bạn trong IIS, tất cả những gì bạn phải làm là truy cập trang web và "Chỉnh sửa liên kết", chọn https và chọn chứng chỉ.
bgmCoder

Câu trả lời:


49

Tôi nên làm gì để chuẩn bị trang web của mình cho https. (Tôi có cần thay đổi mã / Cấu hình không)

Bạn nên ghi nhớ các phương pháp hay nhất để mã hóa an toàn (đây là phần giới thiệu tốt: http://www.owasp.org/index.php/Secure_Coding_Principles ), nếu không, tất cả những gì bạn cần là chứng chỉ SSL được thiết lập chính xác.

SSL và https có phải là một và giống nhau không ..

Khá nhiều, có.

Tôi có cần đăng ký với ai đó để xin giấy phép hay gì đó không.

Bạn có thể mua chứng chỉ SSL từ tổ chức phát hành chứng chỉ hoặc sử dụng chứng chỉ tự ký. Những thứ bạn có thể mua có giá rất khác nhau - từ 10 đô la đến hàng trăm đô la một năm. Ví dụ, bạn sẽ cần một trong những thứ đó nếu bạn thiết lập một cửa hàng trực tuyến. Chứng chỉ tự ký là một lựa chọn khả thi cho ứng dụng nội bộ. Bạn cũng có thể sử dụng một trong những cái đó để phát triển. Đây là hướng dẫn hay về cách thiết lập chứng chỉ tự ký cho IIS: Bật SSL trên IIS 7.0 bằng chứng chỉ tự ký

Tôi có cần bảo mật tất cả các trang của mình không hay chỉ trang đăng nhập ..

Sử dụng HTTPS cho mọi thứ, không chỉ là thông tin đăng nhập ban đầu của người dùng. Nó sẽ không quá tốn kém và điều đó có nghĩa là dữ liệu mà người dùng gửi / nhận từ ứng dụng được lưu trữ từ xa của bạn không thể bị bên ngoài đọc nếu nó bị chặn. Ngay cả Gmail hiện cũng bật HTTPS theo mặc định.


1
Bạn cũng có thể nhận được chứng chỉ TLS miễn phí, tức là từ Hãy mã hóa
1615903

8

Loại dữ liệu kinh doanh ? Bí mật thương mại hay chỉ là những thứ mà họ không muốn mọi người nhìn thấy nhưng nếu nó lọt ra ngoài, nó sẽ không phải là vấn đề lớn? Nếu chúng ta đang nói về bí mật thương mại, thông tin tài chính, thông tin khách hàng và những thứ nói chung là bí mật. Sau đó, thậm chí không đi xuống tuyến đường đó.

Tôi đang tự hỏi liệu mình có cần sử dụng kết nối bảo mật (https) hay chỉ cần xác thực biểu mẫu là đủ.

Sử dụng kết nối an toàn trên mọi nẻo đường.

Tôi có cần thay đổi mã / cấu hình không

Đúng. Có thể không. Bạn có thể muốn nhờ một chuyên gia làm việc này cho bạn.

SSL và https có phải là một và giống nhau ...

Chủ yếu là có. Mọi người thường coi những thứ đó là cùng một thứ.

Tôi có cần đăng ký với ai đó để xin giấy phép hay gì đó không.

Bạn có thể muốn chứng chỉ của mình được tổ chức cấp chứng chỉ ký. Nó sẽ khiến bạn hoặc khách hàng của bạn phải trả một chút tiền.

Tôi có cần bảo mật tất cả các trang của mình hay chỉ trang đăng nhập ...

Sử dụng https xuyên suốt. Hiệu suất thường không phải là vấn đề nếu trang web dành cho người dùng nội bộ.

Tôi đã tìm kiếm trên Internet để tìm câu trả lời, nhưng tôi không thể có được tất cả những điểm này ... Mọi sách trắng hoặc tài liệu tham khảo khác cũng sẽ hữu ích ...

Bắt đầu tại đây để biết một số gợi ý: http://www.owasp.org/index.php/Category:OWASP_Guide_Project

Lưu ý rằng SSL là một phần nhỏ giúp trang web của bạn an toàn khi nó có thể truy cập được từ internet. Nó không ngăn chặn hầu hết các loại hack.


1 cho những lời khuyên đúng đắn về việc đảm bảo tất cả các cách và ngăn chặn một thảm họa bằng cách hỏi nếu thông tin là rất bí mật và kiến nghị không đặt nó trực tuyến
BlueTrin

7

Tôi nghĩ rằng bạn đang nhầm lẫn với Xác thực trang web và SSL.

Nếu bạn cần đưa trang web của mình vào SSL, thì bạn cần cài đặt chứng chỉ SSL vào máy chủ web của mình. Bạn có thể mua chứng chỉ cho mình từ một trong những nơi như Symantec, v.v. Chứng chỉ sẽ chứa cặp khóa công khai / riêng tư của bạn, cùng với những thứ khác.

Bạn sẽ không cần phải thực hiện bất kỳ điều gì trong mã nguồn của mình và bạn vẫn có thể tiếp tục sử dụng Kiểm tra biểu mẫu (hoặc bất kỳ hình thức nào khác) trong trang web của mình. Chỉ là, bất kỳ giao tiếp dữ liệu nào diễn ra giữa máy chủ web và máy khách sẽ được mã hóa và ký bằng chứng chỉ của bạn. Mọi người sẽ sử dụng HTTP an toàn (https: //) để truy cập trang web của bạn.

Xem phần này để biết thêm thông tin -> http://en.wikipedia.org/wiki/Transport_Layer_Security


3

Đối với dữ liệu kinh doanh, nếu dữ liệu là riêng tư, tôi sẽ sử dụng kết nối bảo mật, nếu không, xác thực biểu mẫu là đủ.

Nếu bạn quyết định sử dụng kết nối bảo mật, xin lưu ý rằng tôi không có kinh nghiệm về bảo mật các trang web, tôi chỉ rút lại những gì tôi gặp phải trong trải nghiệm cá nhân của mình. Nếu tôi sai, xin vui lòng sửa cho tôi.

Tôi nên làm gì để chuẩn bị trang web của mình cho https. (Tôi có cần thay đổi mã / Cấu hình không)

Để bật SSL (Lớp cổng bảo mật) cho trang web của bạn, bạn cần thiết lập chứng chỉ, mã hoặc cấu hình không bị thay đổi.

Tôi đã bật SSL cho máy chủ web nội bộ bằng cách sử dụng OpenSSLActivePerl từ hướng dẫn trực tuyến này . Nếu điều này được sử dụng cho lượng khán giả lớn hơn (khán giả của tôi dưới 10 người) và thuộc phạm vi công cộng, tôi khuyên bạn nên tìm kiếm các giải pháp thay thế chuyên nghiệp.

SSL và https có phải là một và giống nhau ...

Không chính xác, nhưng chúng đi đôi với nhau! SSL đảm bảo rằng dữ liệu được mã hóa và giải mã qua lại trong khi bạn đang xem trang web, httpslà URI cần thiết để truy cập trang web an toàn. Bạn sẽ nhận thấy khi bạn cố gắng truy cập http://secure.mydomain.comnó sẽ hiển thị thông báo lỗi.

Tôi có cần đăng ký với ai đó để xin giấy phép hay gì đó không.

Bạn sẽ không cần phải có giấy phép, mà là một chứng chỉ. Bạn có thể xem xét các công ty cung cấp dịch vụ chuyên nghiệp với các trang web bảo mật, chẳng hạn như VeriSign làm ví dụ.

Tôi có cần bảo mật tất cả các trang của mình hay chỉ trang đăng nhập ...

Khi chứng chỉ của bạn được kích hoạt cho mydomain.commọi trang nằm trong đó *.mydomain.comsẽ được bảo mật.


1

4.Tôi có cần bảo mật tất cả các trang của mình hay chỉ trang đăng nhập ...

Chỉ cần giữ trang đăng nhập dưới https

điều này sẽ đảm bảo không có chi phí khi duyệt các trang khác. điều kiện là bạn cần cung cấp cài đặt xác thực chính xác trong cấu hình web. Điều này là để đảm bảo người dùng chưa đăng nhập sẽ không thể duyệt các trang cần xác thực.


3
Chỉ cung cấp một phần trang web của bạn theo TLS là không an toàn. Kẻ tấn công đang hoạt động có thể sử dụng SSLStrip và có quyền truy cập vào các trang được cho là được bảo vệ.
Tobu

1

@balalakshmi đã đề cập về cài đặt xác thực chính xác. Xác thực chỉ là một nửa của vấn đề, nửa còn lại là ủy quyền.

Nếu bạn đang sử dụng Xác thực biểu mẫu và các điều khiển tiêu chuẩn <asp:Login>thì có một số điều bạn cần làm để đảm bảo rằng chỉ những người dùng đã xác thực của bạn mới có thể truy cập các trang được bảo mật.

Trong web.config, dưới <system.web>phần bạn sẽ cần phải vô hiệu hóa truy cập nặc danh theo mặc định:

<authorization>
 <deny users="?" />
</authorization>

Bất kỳ trang nào sẽ được truy cập ẩn danh (chẳng hạn như chính trang Login.aspx) sẽ cần phải có ghi đè cho phép lại quyền truy cập ẩn danh. Điều này đòi hỏi một <location>yếu tố và phải được bố trí tại các <configuration>cấp ( ngoài các <system.web>phần), như sau:

<!-- Anonymous files -->
<location path="Login.aspx">
 <system.web>
  <authorization>
   <allow users="*" />
  </authorization>
 </system.web>
</location>

Lưu ý rằng bạn cũng sẽ cần cho phép truy cập ẩn danh vào bất kỳ biểu định kiểu hoặc tập lệnh nào được các trang ẩn danh sử dụng:

<!-- Anonymous folders -->
<location path="styles">
 <system.web>
  <authorization>
   <allow users="*" />
  </authorization>
 </system.web>
</location>

Lưu ý rằng paththuộc tính của vị trí có liên quan đến web.configthư mục và không thể có ~/tiền tố, không giống như hầu hết các thuộc tính cấu hình kiểu đường dẫn khác.


-2

Hãy thử tạo một thư mục khởi động bằng PHP, như trong

<?PHP
$ip = $_SERVER['REMOTE_ADDR'];
$privacy = ['BOOTSTRAP_CONFIG'];
$shell   = ['BOOTSTRAP_OUTPUT'];
enter code here
if $ip == $privacy {
function $privacy int $ip = "https://";
} endif {
echo $shell
}
?>

Đó chủ yếu là nó!


3
Điều đó thực sự không thực sự trả lời câu hỏi
Andreas
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.