입력을 사용하여 시작 시 자동으로 스크립트를 실행하시겠습니까?

입력을 사용하여 시작 시 자동으로 스크립트를 실행하시겠습니까?

내 데비안 컴퓨터가 부팅될 때 OpenVPN을 실행하고 싶습니다. 그러면 서버 로그인과 비밀번호도 자동으로 채워집니다. SSH를 통해 부팅하고 tux에서 분리한 후 지속적으로 실행해야 했지만 모든 번거로움을 없애고 싶습니다.

다음은 실행에 필요한 명령과 정보를 이해할 수 있도록 SSH 로그를 붙여넣은 것입니다.

/etc/openvpn$ sudo openvpn server.vpn.com.tcp443.ovpn
Tue Aug 15 18:54:42 2017 OpenVPN 2.3.4 arm-unknown-linux-gnueabihf [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jun 26 2017
Tue Aug 15 18:54:42 2017 library versions: OpenSSL 1.0.1t  3 May 2016, LZO 2.08
Enter Auth Username: ******************
Enter Auth Password: ********

어떤 도움이라도 대단히 감사하겠습니다.

답변1

비밀번호 대신 공개 키를 사용하도록 설정을 변경할 수 있습니다. 예를 보려면 다음을 참조하세요.OpenVPN 사용자 가이드.

현재 설정을 유지하려면 --auth-user-pass [up]에 설명된 대로 옵션을 사용하여 파일에 사용자 이름과 비밀번호를 제공할 수 있습니다.문서:

--auth-사용자 비밀번호 [up]

사용자 이름/비밀번호를 사용하여 서버에 인증하세요. up은 사용자 이름/비밀번호 2줄이 포함된 파일입니다(참고: OpenVPN에만 해당 파일에서 비밀번호를 읽습니다. H).

up을 생략하면 콘솔에 사용자 이름/비밀번호를 묻는 메시지가 표시됩니다.

서버 구성에서는 클라이언트가 제공한 사용자 이름/비밀번호를 확인하기 위해 --auth-user-pass-verify 스크립트를 지정해야 합니다.

시스템에서 systemd를 실행 중인 경우 OpenVPN 인스턴스를 시작해야 합니다(루트로/sudo 사용). 에 구성 파일을 저장해야 합니다.systemctl start [email protected]/etc/openvpn/NAME.conf

답변2

wanted bySystemD가 포함된 Debian에서 실행 중인 경우 부팅 시 서비스가 시작되도록 사용 대상의 매개변수를 사용하여 새 서비스를 정의 해야 합니다 . SystemV를 사용하는 경우 /etc/rc.d/rc.local.

systemD의 경우 먼저 시스템 서비스를 복사하여 새 서비스를 구성하는 템플릿을 갖습니다.

 $ cp /usr/lib/systemd/system/ssh.service /etc/system/systemd/myservice.service
 $ vim /etc/systemd/system/myservice.service

그런 다음 openvpn 스크립트를 사용하여 매개변수를 업데이트해야 합니다 (openvpn 스크립트는 사용자의 비밀번호를 파일에 입력하는 ExecStart것만큼 간단합니다 ). cat user-pass-file | openvpn config.ovp또한 WantedBy=graphical.target그래픽 대상에서 서비스를 시작할 수 있는 기능을 추가합니다. 그런 다음 다음 명령을 삽입하여 서비스를 시작하고 활성화합니다.

$ systemctl enable myservice.service
$ systemctl start myservice.service

관련 정보