В документации Tcl необязательные элементы выглядят как ? This?
: пример
из http://tcl.tk/man/tcl8.6/TclCmd/try.htm с указанием обработчиков, и предложения "finally" необязательны:
try body ? обработчик ... ? ? finally сценарий ?
В предложении on variableList не является необязательным, но вы можете указать пустой список. Если вы предоставите {параметры результата}
, результат - это сообщение об ошибке (для людей), а параметры - это словарь, содержащий конкретную информацию об ошибке (см. верните справочную страницу для подробностей).
Чтобы уменьшить дублирование кода, используйте блок finally
try {
# your code here
} on error {} {
exit
} finally {
file delete $secret
}
отредактируйте свой брандмауэр, чтобы он принял порт 2222:
iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
если это не решит проблему, возможно, проблема в selinux, так что попробуйте следующее:
сделайте так, чтобы он разрешил порт 2222:
semanage port -a -t ssh_port_t -p tcp 2222
также посмотрите, открыт ли порт с помощью nmap:
nmap -p 2222 172.20.27.169
и если вы изменили какой-либо конфигурационный файл (определяющий порт 2222), вам нужно перезапустить sshd:
service sshd restart