blob: 3924aaf94a6b9979ad19aac33ecbd09248b9b8a0 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
Bram Moolenaarf1568ec2011-12-14 21:17:39 +01002" Language: OpenSSH server configuration file (sshd_config)
Bram Moolenaar256972a2015-12-29 19:10:25 +01003" Author: David Necas (Yeti)
4" Maintainer: Dominik Fischer <d dot f dot fischer at web dot de>
5" Contributor: Thilo Six
6" Contributor: Leonard Ehrenfried <leonard.ehrenfried@web.de>
Bram Moolenaar345efa02016-01-15 20:57:49 +01007" Contributor: Karsten Hopp <karsten@redhat.com>
Bram Moolenaarf1568ec2011-12-14 21:17:39 +01008" Originally: 2009-07-09
Bram Moolenaar01164a62017-11-02 22:58:42 +01009" Last Change: 2017 Oct 25
10" SSH Version: 7.6p1
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010011"
Bram Moolenaar071d4272004-06-13 20:20:40 +000012
13" Setup
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020014" quit when a syntax file was already loaded
15if exists("b:current_syntax")
16 finish
Bram Moolenaar071d4272004-06-13 20:20:40 +000017endif
18
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020019setlocal iskeyword=_,-,a-z,A-Z,48-57
Bram Moolenaar071d4272004-06-13 20:20:40 +000020
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010021
22" case on
23syn case match
24
Bram Moolenaar071d4272004-06-13 20:20:40 +000025
26" Comments
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010027syn match sshdconfigComment "^#.*$" contains=sshdconfigTodo
28syn match sshdconfigComment "\s#.*$" contains=sshdconfigTodo
29
30syn keyword sshdconfigTodo TODO FIXME NOTE contained
Bram Moolenaar071d4272004-06-13 20:20:40 +000031
32" Constants
Bram Moolenaar5c736222010-01-06 20:54:52 +010033syn keyword sshdconfigYesNo yes no none
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010034
Bram Moolenaar5c736222010-01-06 20:54:52 +010035syn keyword sshdconfigAddressFamily any inet inet6
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010036
Bram Moolenaar256972a2015-12-29 19:10:25 +010037syn keyword sshdconfigPrivilegeSeparation sandbox
38
39syn keyword sshdconfigTcpForwarding local remote
40
41syn keyword sshdconfigRootLogin prohibit-password without-password forced-commands-only
42
Bram Moolenaar328da0d2016-03-04 22:22:32 +010043syn keyword sshdconfigCiphers 3des-cbc
44syn keyword sshdconfigCiphers blowfish-cbc
45syn keyword sshdconfigCiphers cast128-cbc
46syn keyword sshdconfigCiphers arcfour
47syn keyword sshdconfigCiphers arcfour128
48syn keyword sshdconfigCiphers arcfour256
49syn keyword sshdconfigCiphers aes128-cbc
50syn keyword sshdconfigCiphers aes192-cbc
51syn keyword sshdconfigCiphers aes256-cbc
52syn match sshdconfigCiphers "\<rijndael-cbc@lysator\.liu.se\>"
53syn keyword sshdconfigCiphers aes128-ctr
54syn keyword sshdconfigCiphers aes192-ctr
55syn keyword sshdconfigCiphers aes256-ctr
56syn match sshdconfigCiphers "\<aes128-gcm@openssh\.com\>"
57syn match sshdconfigCiphers "\<aes256-gcm@openssh\.com\>"
58syn match sshdconfigCiphers "\<chacha20-poly1305@openssh\.com\>"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010059
Bram Moolenaar328da0d2016-03-04 22:22:32 +010060syn keyword sshdconfigMAC hmac-sha1
61syn keyword sshdconfigMAC mac-sha1-96
62syn keyword sshdconfigMAC mac-sha2-256
63syn keyword sshdconfigMAC mac-sha2-512
64syn keyword sshdconfigMAC mac-md5
65syn keyword sshdconfigMAC mac-md5-96
66syn keyword sshdconfigMAC mac-ripemd160
67syn match sshdconfigMAC "\<hmac-ripemd160@openssh\.com\>"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010068syn match sshdconfigMAC "\<umac-64@openssh\.com\>"
Bram Moolenaar328da0d2016-03-04 22:22:32 +010069syn match sshdconfigMAC "\<umac-128@openssh\.com\>"
70syn match sshdconfigMAC "\<hmac-sha1-etm@openssh\.com\>"
71syn match sshdconfigMAC "\<hmac-sha1-96-etm@openssh\.com\>"
72syn match sshdconfigMAC "\<hmac-sha2-256-etm@openssh\.com\>"
73syn match sshdconfigMAC "\<hmac-sha2-512-etm@openssh\.com\>"
74syn match sshdconfigMAC "\<hmac-md5-etm@openssh\.com\>"
75syn match sshdconfigMAC "\<hmac-md5-96-etm@openssh\.com\>"
76syn match sshdconfigMAC "\<hmac-ripemd160-etm@openssh\.com\>"
77syn match sshdconfigMAC "\<umac-64-etm@openssh\.com\>"
78syn match sshdconfigMAC "\<umac-128-etm@openssh\.com\>"
79
80syn keyword sshdconfigHostKeyAlgo ssh-ed25519
81syn match sshdconfigHostKeyAlgo "\<ssh-ed25519-cert-v01@openssh\.com\>"
82syn keyword sshdconfigHostKeyAlgo ssh-rsa
83syn keyword sshdconfigHostKeyAlgo ssh-dss
84syn keyword sshdconfigHostKeyAlgo ecdsa-sha2-nistp256
85syn keyword sshdconfigHostKeyAlgo ecdsa-sha2-nistp384
86syn keyword sshdconfigHostKeyAlgo ecdsa-sha2-nistp521
87syn match sshdconfigHostKeyAlgo "\<ssh-rsa-cert-v01@openssh\.com\>"
88syn match sshdconfigHostKeyAlgo "\<ssh-dss-cert-v01@openssh\.com\>"
89syn match sshdconfigHostKeyAlgo "\<ecdsa-sha2-nistp256-cert-v01@openssh\.com\>"
90syn match sshdconfigHostKeyAlgo "\<ecdsa-sha2-nistp384-cert-v01@openssh\.com\>"
91syn match sshdconfigHostKeyAlgo "\<ecdsa-sha2-nistp521-cert-v01@openssh\.com\>"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010092
Bram Moolenaar256972a2015-12-29 19:10:25 +010093syn keyword sshdconfigRootLogin prohibit-password without-password forced-commands-only
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010094
Bram Moolenaar071d4272004-06-13 20:20:40 +000095syn keyword sshdconfigLogLevel QUIET FATAL ERROR INFO VERBOSE
96syn keyword sshdconfigLogLevel DEBUG DEBUG1 DEBUG2 DEBUG3
Bram Moolenaar5c736222010-01-06 20:54:52 +010097syn keyword sshdconfigSysLogFacility DAEMON USER AUTH AUTHPRIV LOCAL0 LOCAL1
98syn keyword sshdconfigSysLogFacility LOCAL2 LOCAL3 LOCAL4 LOCAL5 LOCAL6 LOCAL7
Bram Moolenaarf1568ec2011-12-14 21:17:39 +010099
100syn keyword sshdconfigCompression delayed
101
Bram Moolenaar345efa02016-01-15 20:57:49 +0100102syn match sshdconfigIPQoS "af1[123]"
103syn match sshdconfigIPQoS "af2[123]"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100104syn match sshdconfigIPQoS "af3[123]"
105syn match sshdconfigIPQoS "af4[123]"
106syn match sshdconfigIPQoS "cs[0-7]"
107syn keyword sshdconfigIPQoS ef lowdelay throughput reliability
108
Bram Moolenaar328da0d2016-03-04 22:22:32 +0100109syn keyword sshdconfigKexAlgo diffie-hellman-group1-sha1
110syn keyword sshdconfigKexAlgo diffie-hellman-group14-sha1
111syn keyword sshdconfigKexAlgo diffie-hellman-group-exchange-sha1
112syn keyword sshdconfigKexAlgo diffie-hellman-group-exchange-sha256
113syn keyword sshdconfigKexAlgo ecdh-sha2-nistp256
114syn keyword sshdconfigKexAlgo ecdh-sha2-nistp384
115syn keyword sshdconfigKexAlgo ecdh-sha2-nistp521
116syn match sshdconfigKexAlgo "\<curve25519-sha256@libssh\.org\>"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100117
118syn keyword sshdconfigTunnel point-to-point ethernet
119
120syn keyword sshdconfigSubsystem internal-sftp
121
122syn match sshdconfigVar "%[hu]\>"
123syn match sshdconfigVar "%%"
124
Bram Moolenaar071d4272004-06-13 20:20:40 +0000125syn match sshdconfigSpecial "[*?]"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100126
Bram Moolenaar071d4272004-06-13 20:20:40 +0000127syn match sshdconfigNumber "\d\+"
128syn match sshdconfigHostPort "\<\(\d\{1,3}\.\)\{3}\d\{1,3}\(:\d\+\)\?\>"
129syn match sshdconfigHostPort "\<\([-a-zA-Z0-9]\+\.\)\+[-a-zA-Z0-9]\{2,}\(:\d\+\)\?\>"
Bram Moolenaar5c736222010-01-06 20:54:52 +0100130" FIXME: this matches quite a few things which are NOT valid IPv6 addresses
Bram Moolenaar071d4272004-06-13 20:20:40 +0000131syn match sshdconfigHostPort "\<\(\x\{,4}:\)\+\x\{,4}:\d\+\>"
132syn match sshdconfigTime "\<\(\d\+[sSmMhHdDwW]\)\+\>"
133
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100134
135" case off
136syn case ignore
137
138
Bram Moolenaar071d4272004-06-13 20:20:40 +0000139" Keywords
Bram Moolenaar5c736222010-01-06 20:54:52 +0100140syn keyword sshdconfigMatch Host User Group Address
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100141
142syn keyword sshdconfigKeyword AcceptEnv
143syn keyword sshdconfigKeyword AddressFamily
144syn keyword sshdconfigKeyword AllowAgentForwarding
145syn keyword sshdconfigKeyword AllowGroups
Bram Moolenaar256972a2015-12-29 19:10:25 +0100146syn keyword sshdconfigKeyword AllowStreamLocalForwarding
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100147syn keyword sshdconfigKeyword AllowTcpForwarding
148syn keyword sshdconfigKeyword AllowUsers
Bram Moolenaar345efa02016-01-15 20:57:49 +0100149syn keyword sshdconfigKeyword AuthenticationMethods
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100150syn keyword sshdconfigKeyword AuthorizedKeysFile
Bram Moolenaar256972a2015-12-29 19:10:25 +0100151syn keyword sshdconfigKeyword AuthorizedKeysCommand
152syn keyword sshdconfigKeyword AuthorizedKeysCommandUser
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100153syn keyword sshdconfigKeyword AuthorizedPrincipalsFile
Bram Moolenaar5c736222010-01-06 20:54:52 +0100154syn keyword sshdconfigKeyword Banner
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100155syn keyword sshdconfigKeyword ChallengeResponseAuthentication
156syn keyword sshdconfigKeyword ChrootDirectory
157syn keyword sshdconfigKeyword Ciphers
158syn keyword sshdconfigKeyword ClientAliveCountMax
159syn keyword sshdconfigKeyword ClientAliveInterval
160syn keyword sshdconfigKeyword Compression
161syn keyword sshdconfigKeyword DebianBanner
162syn keyword sshdconfigKeyword DenyGroups
163syn keyword sshdconfigKeyword DenyUsers
Bram Moolenaarbc2eada2017-01-02 21:27:47 +0100164syn keyword sshdconfigKeyword DisableForwarding
Bram Moolenaar5c736222010-01-06 20:54:52 +0100165syn keyword sshdconfigKeyword ForceCommand
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100166syn keyword sshdconfigKeyword GSSAPIAuthentication
Bram Moolenaar5c736222010-01-06 20:54:52 +0100167syn keyword sshdconfigKeyword GSSAPICleanupCredentials
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100168syn keyword sshdconfigKeyword GSSAPIKeyExchange
169syn keyword sshdconfigKeyword GSSAPIStoreCredentialsOnRekey
170syn keyword sshdconfigKeyword GSSAPIStrictAcceptorCheck
171syn keyword sshdconfigKeyword GatewayPorts
172syn keyword sshdconfigKeyword HostCertificate
173syn keyword sshdconfigKeyword HostKey
Bram Moolenaar345efa02016-01-15 20:57:49 +0100174syn keyword sshdconfigKeyword HostKeyAgent
Bram Moolenaar256972a2015-12-29 19:10:25 +0100175syn keyword sshdconfigKeyword HostKeyAlgorithms
176syn keyword sshdconfigKeyword HostbasedAcceptedKeyTypes
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100177syn keyword sshdconfigKeyword HostbasedAuthentication
178syn keyword sshdconfigKeyword HostbasedUsesNameFromPacketOnly
179syn keyword sshdconfigKeyword IPQoS
180syn keyword sshdconfigKeyword IgnoreRhosts
181syn keyword sshdconfigKeyword IgnoreUserKnownHosts
182syn keyword sshdconfigKeyword KbdInteractiveAuthentication
183syn keyword sshdconfigKeyword KerberosAuthentication
184syn keyword sshdconfigKeyword KerberosGetAFSToken
185syn keyword sshdconfigKeyword KerberosOrLocalPasswd
186syn keyword sshdconfigKeyword KerberosTicketCleanup
187syn keyword sshdconfigKeyword KexAlgorithms
Bram Moolenaar5c736222010-01-06 20:54:52 +0100188syn keyword sshdconfigKeyword KeyRegenerationInterval
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100189syn keyword sshdconfigKeyword ListenAddress
190syn keyword sshdconfigKeyword LogLevel
191syn keyword sshdconfigKeyword LoginGraceTime
192syn keyword sshdconfigKeyword MACs
193syn keyword sshdconfigKeyword Match
194syn keyword sshdconfigKeyword MaxAuthTries
195syn keyword sshdconfigKeyword MaxSessions
196syn keyword sshdconfigKeyword MaxStartups
197syn keyword sshdconfigKeyword PasswordAuthentication
198syn keyword sshdconfigKeyword PermitBlacklistedKeys
199syn keyword sshdconfigKeyword PermitEmptyPasswords
200syn keyword sshdconfigKeyword PermitOpen
201syn keyword sshdconfigKeyword PermitRootLogin
Bram Moolenaar256972a2015-12-29 19:10:25 +0100202syn keyword sshdconfigKeyword PermitTTY
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100203syn keyword sshdconfigKeyword PermitTunnel
204syn keyword sshdconfigKeyword PermitUserEnvironment
Bram Moolenaar256972a2015-12-29 19:10:25 +0100205syn keyword sshdconfigKeyword PermitUserRC
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100206syn keyword sshdconfigKeyword PidFile
207syn keyword sshdconfigKeyword Port
208syn keyword sshdconfigKeyword PrintLastLog
209syn keyword sshdconfigKeyword PrintMotd
210syn keyword sshdconfigKeyword Protocol
Bram Moolenaar256972a2015-12-29 19:10:25 +0100211syn keyword sshdconfigKeyword PubkeyAcceptedKeyTypes
Bram Moolenaar5c736222010-01-06 20:54:52 +0100212syn keyword sshdconfigKeyword PubkeyAuthentication
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100213syn keyword sshdconfigKeyword RSAAuthentication
Bram Moolenaar256972a2015-12-29 19:10:25 +0100214syn keyword sshdconfigKeyword RekeyLimit
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100215syn keyword sshdconfigKeyword RevokedKeys
216syn keyword sshdconfigKeyword RhostsRSAAuthentication
217syn keyword sshdconfigKeyword ServerKeyBits
218syn keyword sshdconfigKeyword ShowPatchLevel
219syn keyword sshdconfigKeyword StrictModes
220syn keyword sshdconfigKeyword Subsystem
221syn keyword sshdconfigKeyword SyslogFacility
Bram Moolenaar5c736222010-01-06 20:54:52 +0100222syn keyword sshdconfigKeyword TCPKeepAlive
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100223syn keyword sshdconfigKeyword TrustedUserCAKeys
224syn keyword sshdconfigKeyword UseDNS
225syn keyword sshdconfigKeyword UseLogin
226syn keyword sshdconfigKeyword UsePAM
Bram Moolenaar256972a2015-12-29 19:10:25 +0100227syn keyword sshdconfigKeyword VersionAddendum
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100228syn keyword sshdconfigKeyword X11DisplayOffset
229syn keyword sshdconfigKeyword X11Forwarding
230syn keyword sshdconfigKeyword X11UseLocalhost
231syn keyword sshdconfigKeyword XAuthLocation
232
Bram Moolenaar071d4272004-06-13 20:20:40 +0000233
234" Define the default highlighting
Bram Moolenaar071d4272004-06-13 20:20:40 +0000235
Bram Moolenaarf37506f2016-08-31 22:22:10 +0200236hi def link sshdconfigComment Comment
237hi def link sshdconfigTodo Todo
238hi def link sshdconfigHostPort sshdconfigConstant
239hi def link sshdconfigTime sshdconfigConstant
240hi def link sshdconfigNumber sshdconfigConstant
241hi def link sshdconfigConstant Constant
242hi def link sshdconfigYesNo sshdconfigEnum
243hi def link sshdconfigAddressFamily sshdconfigEnum
244hi def link sshdconfigPrivilegeSeparation sshdconfigEnum
245hi def link sshdconfigTcpForwarding sshdconfigEnum
246hi def link sshdconfigRootLogin sshdconfigEnum
247hi def link sshdconfigCiphers sshdconfigEnum
248hi def link sshdconfigMAC sshdconfigEnum
249hi def link sshdconfigHostKeyAlgo sshdconfigEnum
250hi def link sshdconfigRootLogin sshdconfigEnum
251hi def link sshdconfigLogLevel sshdconfigEnum
252hi def link sshdconfigSysLogFacility sshdconfigEnum
253hi def link sshdconfigVar sshdconfigEnum
254hi def link sshdconfigCompression sshdconfigEnum
255hi def link sshdconfigIPQoS sshdconfigEnum
256hi def link sshdconfigKexAlgo sshdconfigEnum
257hi def link sshdconfigTunnel sshdconfigEnum
258hi def link sshdconfigSubsystem sshdconfigEnum
259hi def link sshdconfigEnum Function
260hi def link sshdconfigSpecial Special
261hi def link sshdconfigKeyword Keyword
262hi def link sshdconfigMatch Type
Bram Moolenaar071d4272004-06-13 20:20:40 +0000263
264let b:current_syntax = "sshdconfig"
Bram Moolenaarf1568ec2011-12-14 21:17:39 +0100265
266" vim:set ts=8 sw=2 sts=2: