Ben nginx güvenli bir bağlantı (https) kurmaya çalışıyorum.
Ancak, özel anahtarın herhangi bir öğreticide belirtilmeyen izinleri hakkında biraz endişeliyim.
Onları değiştirmeli miyim? Neye?
Ben nginx güvenli bir bağlantı (https) kurmaya çalışıyorum.
Ancak, özel anahtarın herhangi bir öğreticide belirtilmeyen izinleri hakkında biraz endişeliyim.
Onları değiştirmeli miyim? Neye?
Yanıtlar:
Özel anahtarların okuması çok kısıtlanmış olmalıdır. Sahip 600
olunan ve sahip olunan izinlerin ayarlanması root
gerekir. Ancak, başka güvenli izin ayarları da vardır - Ubuntu anahtarları sahibi root
ve grubu ssl-cert
ve izinleri olan bir dizinde saklar 710
. Bu, söz ssl-cert
konusu dizindeki herhangi bir dosyaya yalnızca üyelerin erişebileceği anlamına gelir . Özel anahtarların grup ssl-cert
, sahip root
ve izinleri olur 640
.
Nginx kurulumu ile ilgili bir sorun yaşadım ve bu soruya rastladım. Buradaki diğer cevap zaten soruyu doğrudan yanıtladı ama biraz daha fazla bilginin yararlı olacağını düşündüm.
Normalde, nginx root
init komut dosyaları / systemd tarafından kullanıcı olarak başlatılır . Bununla birlikte, nginx normal işlemler için daha az ayrıcalıklı bir kullanıcıya geçme özelliğine de sahiptir. Benim sorum ssl sertifikasını / anahtarını yüklemek için hangi kullanıcının kullanıldığı oldu? İlk ayrıcalıklı kullanıcı mı yoksa geçiş yapan kullanıcı mı?
Neyse ki, nginx, kullanıcıları değiştirmeden önce sertifikayı ve anahtarı belleğe okumak için ilk izinleri kullanır. Normalde, hala çalışırken nginx tarafından yüklendikleri için anahtarları çok kısıtlı izinlerle bırakabilirsiniz root
.
Beni buraya indirdiğim sorun ssl_certificate
sadece server
bloklarımda tanımlamamdı nginx.conf
. [error] 18606#18606: *311 no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking
Anahtarlarımın doğru yerde olduğunu iyi ve iyi bildiğimde hata alıyordum . Bu sorunu ben yoktu olmasıydı ssl_certificate
de http
düzeyine nginx.conf
.
Umarım bu birisi için yararlıdır.
nginx
gruptaki kişiler tarafından okunabilir hale getirmek gerekli değildir . Web sunucusu, yalnızcaroot
(olması gerektiği gibi) tarafından okunabilir olsalar bile bunları kullanabilecektir .