vpncli -s so với GUI: đăng nhập Cisco Secure Client
vpncli -s đọc một tệp câu trả lời đã chuẩn bị, còn GUI đọc một con người. So sánh khi nào tập lệnh đáng dùng, tệp cần gì và cách chứng minh.
Cisco Secure Client cung cấp hai cách trả lời cùng những lời nhắc đăng nhập: một người gõ vào vpnui.exe, hoặc một tập lệnh đưa câu trả lời vào vpncli.exe qua đầu vào chuẩn với -s. Cách thứ hai cho phép các kết nối theo lịch mà không phải đọc màn hình GUI, và nó cũng biến đăng nhập thành một tệp phải được bảo vệ như thông tin xác thực. Bạn chọn cách nào tùy thuộc vào việc có người ngồi trước máy hay không và mật khẩu đổi bao thường xuyên. Không lựa chọn nào thay đổi điều cổng yêu cầu, chỉ thay đổi ai là người trả lời.
Cả hai đường đều kết thúc trong cùng một đường hầm, nên so sánh là về vận hành, không phải giao thức.
Hai cách trả lời cùng những lời nhắc
Đường GUI mang tính tương tác theo thiết kế: ứng dụng khách hỏi, ai đó trả lời, và phiên tồn tại chừng nào người đó để yên. Đây là lựa chọn đúng trên máy tính xách tay do người dùng, vì lời nhắc thích ứng với phương thức xác thực của cổng và không ai phải giữ mật khẩu dạng văn bản thuần trên đĩa.
Đường tập lệnh phù hợp cho ki-ốt, máy phòng thí nghiệm hoặc tác vụ theo lịch mà không có ai gõ. Việc đánh đổi rõ ràng: bạn chấp nhận một tệp thông tin xác thực trên đĩa để lấy kết nối không giám sát. Nếu cổng cung cấp xác thực bằng chứng chỉ hoặc SAML, đánh đổi đó thường không đáng, vì tệp chỉ tồn tại để trả lời những lời nhắc mà phương thức mạnh hơn sẽ tránh.
Đừng trộn hai cách trên cùng một máy cùng lúc. Dòng lệnh và ứng dụng khách đồ họa tranh nhau cùng một trạng thái phiên, và đó là vấn đề của phần tiếp theo.
Tệp câu trả lời phải chứa gì
Ứng dụng khách hỏi theo thứ tự — cổng, đôi khi là chọn nhóm, tên người dùng, mật khẩu và mọi xác nhận biểu ngữ. Một tệp trả lời tất cả sẽ trông như sau, với giá trị thật được thay vào:
connect vpn.example.com
MyGroup
alice
correct-horse-battery
yCách đáng tin cậy để dựng tệp đó là kết nối một lần bằng tay, ghi lại từng dòng bạn gõ và từng lần nhấn Enter, rồi tái tạo chính xác chuỗi đó. Những triển khai lưu nhóm và tên người dùng trong hồ sơ có thể cần dòng trống ở nơi những lời nhắc đó không còn xuất hiện, và dòng cuối vẫn cần dấu xuống dòng riêng. Một tệp thiếu một dòng thường treo ở lời nhắc cuối thay vì thất bại với lỗi rõ ràng, và đó là lý do mạng bị đổ lỗi. So tệp với bản ghi của bạn hai lần, một lần về thứ tự và một lần về các dòng trống.
Giữ tệp ngoài mọi thư mục được đồng bộ và chỉ tài khoản chạy tác vụ đọc được. Mật khẩu đó là văn bản thuần, nên tệp là thông tin xác thực: không kho lưu trữ, không đĩa chia sẻ, không tệp đính kèm trong phiếu. Ứng dụng khách sẽ không cảnh báo bạn về bất kỳ điều nào trong số này.
Vì sao GUI phải biến mất trước
Bắt đầu tập lệnh bằng việc kết thúc tiến trình GUI, sau đó chạy CLI từ chính thư mục cài đặt của nó, vì cả thư mục làm việc lẫn phiên bản ứng dụng khách đều quan trọng. Một trình bao minh họa:
@echo off
taskkill /IM vpnui.exe /F >nul 2>&1
cd /d "%PROGRAMFILES(x86)%\Cisco\Cisco Secure Client"
vpncli.exe -s < C:\secure\login.txtMã thoát không phải tín hiệu thành công đáng tin ở đây. Ứng dụng khách in tiến độ và giữ đường hầm trong một tiến trình riêng, nên hãy đọc đầu ra để tìm dòng trạng thái kết nối và chỉ sau đó mới bắt đầu công việc phụ thuộc VPN.
Nếu bỏ qua việc kết thúc GUI, tập lệnh có vẻ đang chạy trong khi phiên hiện có vẫn ở trạng thái người dùng để lại. Lỗi đó trông chập chờn, và đúng là kiểu lỗi sống sót qua một tuần phỏng đoán.
Hãy xác nhận phiên, đừng giả định
Sau khi tập lệnh trả về, hãy kiểm tra thứ chỉ tồn tại bên trong đường hầm — một máy chủ nội bộ, hoặc hậu tố DNS mà chỉ trình phân giải của công ty trả lời. Cũng đọc dòng trạng thái kết nối trong đầu ra của ứng dụng khách, và coi mọi thứ khác là thất bại chứ không phải thành công chậm. Chạy lại tệp khi đã có phiên có thể để ứng dụng khách ở trạng thái nửa cấu hình, nên hoặc ngắt kết nối trước hoặc bỏ qua đăng nhập khi phiên đã có.
Sau đó quyết định ai chịu trách nhiệm kết nối lại. Một vòng lặp ping địa chỉ nội bộ và chạy lại đăng nhập có thể giữ ki-ốt trực tuyến hàng tháng, và cũng có thể khóa tài khoản lần đầu mật khẩu đổi. Giới hạn số lần thử, cảnh báo khi vượt, và để nhóm danh tính đổi tệp thay vì để mật khẩu cũ thử lại đến khi bị khóa.
vpnclient.exe cũ không phải cùng một công cụ
Cùng một tự động hóa xuất hiện dưới tên cũ hơn, và hai thứ không thể thay thế nhau. Ứng dụng khách Cisco IPsec đã ngừng dùng dùng vpnclient.exe với các đối số nội tuyến như động từ connect, tên hồ sơ, người dùng và mật khẩu trên một dòng lệnh; trong khi vpncli.exe chờ một chuỗi lời nhắc trên đầu vào chuẩn với -s. Vì thế sao chép một tập lệnh diễn đàn cũ sang máy hiện nay tạo ra một lệnh chạy được, không làm gì thấy được, và cổng bị đổ lỗi.
Trước khi sửa bất kỳ đối số nào, hãy kiểm tra ứng dụng khách nào đã cài và tập lệnh thực sự gọi cái nào. Khác biệt tên đủ nhỏ để bị bỏ sót trong một tác vụ theo lịch, và đó là điều đầu tiên cần xác minh khi một tập lệnh kế thừa ngừng hoạt động sau khi nâng cấp.