生成自签名SSL证书,权限错误(OSX)
问题描述:
我正在关注this教程。我得的dnsmasq工作正常,但得到尝试使用这个脚本来生成自签名证书时权限错误:生成自签名SSL证书,权限错误(OSX)
#!/usr/bin/env sh
cat > openssl.conf <<-EOF
[req]
distinguished_name = site_distinguished_name
x509_extensions = v3_site
prompt = no
[site_distinguished_name]
CN = *.${PWD##*/}.dev
[v3_site]
keyUsage = keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @domains
[domains]
DNS.1 = *.${PWD##*/}.dev
DNS.2 = ${PWD##*/}.dev
EOF
openssl req -new -newkey rsa:2048 -sha256 \
-days 3650 -nodes -x509 -keyout site.key \
-out site.crt -config openssl.conf
这里就是我得到的终端
project_directory $ ./ssl_cert_gen.sh
-bash: ./ssl_cert_gen.sh: Permission denied
project_directory $ sudo ./ssl_cert_gen.sh
Password:
sudo: ./ssl_cert_gen.sh: command not found
上午我离开?有任何想法吗?提前致谢。
答
你必须使脚本可执行:
$ chmod +x ssl_cert_gen.sh
在UNIX上的所有可执行文件必须有相应的可执行文件(x
)位设置,否则内核不会执行它们。脚本也是可执行文件,但它们使用“shebang”机制(#!
)指定解释器的名称。