gossl

Форк
0
/
verify.go 
48 строк · 1.2 Кб
1
package cmd
2

3
import (
4
	"github.com/spf13/cobra"
5
	"github.com/vvrnv/gossl/internal/certificate"
6
	"github.com/vvrnv/gossl/internal/ip"
7
	"github.com/vvrnv/gossl/internal/log"
8
)
9

10
var (
11
	server  string
12
	timeout int
13
	port    int
14
	output  string
15
)
16

17
var verifyCmd = &cobra.Command{
18
	Use:   "verify",
19
	Short: "verify SSL certificate",
20
	Long: `verify SSL certificate with domain name or ip address.
21

22
For example:
23
  gossl verify -s domain.com
24
  gossl verify --server 8.8.8.8`,
25
	Run: func(_ *cobra.Command, args []string) {
26

27
		ips, err := ip.GetIPV4(server)
28
		if err != nil {
29
			log.Fatal(err)
30
		}
31

32
		for _, ip := range ips {
33
			err = certificate.GetCertificateInfo(ip, server, timeout, port, output)
34
			if err != nil {
35
				log.Error(err)
36
			}
37
		}
38
	},
39
}
40

41
func init() {
42
	verifyCmd.Flags().StringVarP(&server, "server", "s", "", "enter domain name or ip address (required)")
43
	verifyCmd.Flags().IntVarP(&timeout, "timeout", "t", 5, "enter timeout in seconds for verify command. (optional)")
44
	verifyCmd.Flags().IntVarP(&port, "port", "p", 443, "enter SSL port for verify command. (optional)")
45
	verifyCmd.Flags().StringVarP(&output, "output", "o", "", "output format. currently only json supported. (optional)")
46
	verifyCmd.MarkFlagRequired("server")
47
	rootCmd.AddCommand(verifyCmd)
48
}
49

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.